Javascript KnockoutJS数组
请签出这个JS邮箱 当在控制台中运行以下命令时,显示的结果对我来说是有意义的 语句:vd.tools.push(数据项)Javascript KnockoutJS数组,javascript,arrays,knockout.js,observable,Javascript,Arrays,Knockout.js,Observable,请签出这个JS邮箱 当在控制台中运行以下命令时,显示的结果对我来说是有意义的 语句:vd.tools.push(数据项)重新投递:2 但为什么在控制台中运行时会得到以下结果 语句:vd.tools.length结果:0 正如德科德所指出的那样 需要括号吗 vd.tools().length我想整合并解释DCoder的答案 vd.tools指的是一个observableArray,它是一个Javascript对象,length属性不指存储项的数量 通过“添加括号”vd.tools()我们获得对底
重新投递:2 但为什么在控制台中运行时会得到以下结果 语句:vd.tools.length
结果:0 正如德科德所指出的那样 需要括号吗
vd.tools().length我想整合并解释DCoder的答案
vd.tools
指的是一个observableArray,它是一个Javascript对象,length
属性不指存储项的数量
通过“添加括号”vd.tools()
我们获得对底层数组的引用,该数组由KnockoutJS的observableArray包装
这是存储数据的真实数组,在这里,我们可以要求length
属性获得正确的结果
因此,DCoder的回答很有道理。谢谢DCoder,我不能接受你的回答,因为这是一个评论。如果您愿意,请将其作为答案发布,我会接受。
工具
ObservalArray上的.length
实际上是,它返回函数期望的参数数,因此为0。