每次从服务器获取数据时,我都想丢弃我的observablearray中的数据。
之间的功能有何不同
self.myArray([]);
VS
self.myArray.removeAll();
答案 0 :(得分:56)
从最终结果的角度来看,两个调用之间没有区别,因此最终会得到不包含任何元素的myArray
。
然而,存在一个小差异(如果您不关心不同的返回值):
self.myArray([]);
将用新创建的空数组替换基础数组实例。
虽然
self.myArray.removeAll();
将从基础数组中删除所有项目,但将保留数组实例。
因此,如果你有多个ko.observableArray
使用相同的底层数组,你可以看到两个调用之间的差异: