如何覆盖其他文件js中的函数长度?
jQuery(function ($) {
$.fn.normal_text = function (text) {
$.fn.normal_text.length = function(){
...
}
}
}
我试试这个:
$(document).ready(function(){
$.fn.normal_text.length = function(){ alert('123'); }
});
但它不起作用。我似乎对它很疯狂
答案 0 :(得分:3)
您无法覆盖函数的length
属性,因为它是只读的内置函数。
在语言规范中的“函数实例的属性”下:
15.3.5.1 length
length属性的值是一个整数,表示函数预期的“典型”参数数。但是,该语言允许使用其他数量的参数调用该函数。在除了由length属性指定的数量之外的多个参数上调用时,函数的行为取决于函数。此属性的属性为
{
[[Writable]]:
false
,
[[Enumerable]]:
false,
[[Configurable]]:
{{1 }}false
。
粗体部分解释了函数实例上的}
属性不可写。
答案 1 :(得分:1)
normal_text是一个函数,而不是一个对象,所以你不能覆盖它的属性。