gpt4 book ai didi

jquery - jquery中没有定义长度

转载 作者:行者123 更新时间:2023-12-01 04:51:34 24 4
gpt4 key购买 nike

我正在尝试在 JSON 数据中搜索对象的属性。

但是我在 jQuery 中收到类似 uncaught type error:length is not Defined 的错误。我的 JSON 如下所示:

var list = {
meta: {
limit: 1000,
offset: 0,
previous: null,
total_count: 1797
},
objects: [{
id: 1215,
location: {
id: 1306,
name: "Austin",
parent_id: 43,
type: "City",
},
name: "2ND Street District",
}]
};

$.each(list.objects.location, function (i, v) {
if (v.id.search(new RegExp(/1036/i)) != -1) {
alert(v.name);
return;
}
});

给我关于这个问题的任何想法。

最佳答案

您的代码中有两个错误。首先,您没有迭代数组。该数组是 list.objects,而不是 list.objects.location (这就是您收到错误 length is not Defined 的原因)。因此,您必须将 $.each() 调用更改为:

$.each(list.objects, function(i, v) {

现在您可以使用v.location.id来访问当前对象的id。接下来的问题是:它是一个整数,并且没有函数search(),所以我们直接在表达式上使用.test(),它会转换在测试之前将整数转换为所需的字符串,并将结果作为 bool 值返回,这正是您在这里所需要的。

  if ( /1306/.test(v.location.id) ) {
alert(v.name);
}
});

查看工作 jsfiddle

关于jquery - jquery中没有定义长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19242734/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com