Javascript数组非空数组,长度为0

时间:2017-01-30 03:11:22

标签: javascript knockout.js

我使用knockout js创建一个带搜索功能的列表。

console.log的结果:

enter image description here

正如你所看到的那样,数组中应该有5个对象,但是proto有0.我不明白可能出错的地方。

var iniList = [
    new Spot("Park"),
    new Spot("High School"),
    new Spot("Soccer Stadium"),
    new Spot("Railway Station"),
    new Spot("Hospital")
];


var viewModel = {
    spots: ko.observableArray(iniList),
    filter: ko.observable(''),
    search: function(value) {
        console.log(iniList);

        viewModel.spots.removeAll();
        for (x = 0; x < iniList.length; x++) {
            console.log("iniList[x]");
            if (iniList[x].name.toLowerCase().indexOf(value.toLowerCase()) >= 0) {
                viewModel.spots.push(iniList[x]);
            }
        }
    }
};

1 个答案:

答案 0 :(得分:1)

您正在运行&#34; viewModel.spots.removeAll();&#34;这将删除可观察数组的所有元素。