两者有什么区别?
所以我知道那array.size()是一个函数,而又array.length是一个属性。是否有一个使用案例?有效率吗?(我想.length它会更快,因为它是属性而不是方法调用?)为什么有人会使用较慢的选项?是否存在某些与另一浏览器不兼容的浏览器?
var x = []; console.log(x.size()); console.log(x.length); console.log(x.size()==x.length); x =[1,2,3]; console.log(x.size()); console.log(x.length); console.log(x.size()==x.length);
将打印:
0, 0, true 3, 3, true
Array.size()不是有效的方法
始终使用length属性
有一个库或脚本将size方法添加到数组原型中,因为这不是本机数组方法。通常这样做是为了添加对自定义getter的支持。例如,当您想获取数组内存中的大小时(这是我唯一想到的,此名称对该名称很有用)。
不幸的是size,Underscore.js定义了一个实际上返回对象或数组长度的方法。由于不幸的是,函数的length属性定义为命名参数的数量,因此该函数声明它们必须使用替代参数并选择了大小(count是更好的选择)。 问题来源于stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。