不能使用'in'运算符在canjs

时间:2015-06-21 06:12:19

标签: javascript canjs canjs-list

我正在调用ajax函数来从模型中获取数据。我试图在模板中加载数据,但我无法在can.list中设置属性。 这是我的电话:

this.domainModel.getDomains("domains", function (response, error) {
  if ('domains' in response) {
                   self.filteredList.attr("domains",list);
    } else {
        return error;
    }
})

显示无法使用'in'运算符搜索“18”。我在google中搜索此内容但我找到了jquery的结果。还有其他选择吗?

1 个答案:

答案 0 :(得分:2)

Javascript in运算符在Javascript对象上搜索特定的属性名称。这就是它的作用。

它不会在数组中搜索数组中的值。它不会在对象中搜索具有给定值的属性。这些用途中的任何一个都将以不同的方式编码。

您的代码中不清楚您尝试搜索18的数据结构类型,因此我们无法在没有更详细的情况下进一步建议如何解决您的具体问题。

以下是in的工作原理:

var test = {
    greeting: "hello",
    name: "john"
};

if ("greeting" in test) {
    console.log("found greeting property in test object");
}