jquery检查对象数组中存在的值
jquery check value present in an object array
我正在尝试检查对象的数组中是否存在值
function hasProperties(id){
jQuery(JSON.parse(jQuery("#PropertiesField").html())).each(function () {
if(id== jQuery(this)[0].properties.id) {
console.log((id== jQuery(this)[0].properties.id));
return "Present";
}
})
};
var something = hasProperties("someid");
上面的代码段为something
返回undefined
,但在控制台中也为true。为什么当条件满足时不返回present
,我犯了什么错误?
each方法中提供的函数是一个匿名内部函数。因此,在each()上下文之外不会返回任何内容。为了解决这个问题,你可以做一些事情,比如
function getProperty(id){
var result;
$('your element').each(function(){
//If your condition is true
result=expectedValue
});
return result;
}
- 我不认为您真的想将
#PropertyField
html解析为JSON,然后制作它的jQuery对象。检查一下 - 不做
jQuery(this)[0].properties.id
,只做this.id
,这不是一个正确的语法
我发现了问题,返回的是.each()
。我在foreach函数外添加了一个return,它现在可以工作了
function hasProperties(id){
var found =false;
jQuery(JSON.parse(jQuery("#PropertiesField").html())).each(function () {
if(id== jQuery(this)[0].properties.id) {
console.log((id== jQuery(this)[0].properties.id));
found= true;
return;
}
})
return found;
};
var something = hasProperties("someid");
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 用于检查数组中是否存在元素的javascript自定义方法
- 验证会话中是否存在对象's数组
- 检查数组中是否存在字符串值,并返回找到的数组值js
- underline-js:将键对象与数组键对象进行比较,如果存在,则移除现有的添加新的
- 查找数组's按属性不存在于另一个数组中的对象
- 为什么没有从数组中存在的对象中删除属性
- 在对象上迭代以验证它是否's键存在于数组中
- 使用JQuery检查数组的索引中是否存在字符串
- JavaScript对象中存在数组的问题
- 使用javascript/jquery从现有数组中创建一个新数组,该数组保存项目存在的次数
- undercore返回数组中对象的indes,其中单词存在于对象中的句子中
- 如何使用函数来确定 Javascript 数组中是否存在值
- 检查数组中是否存在数组
- Javascript 速记方法,如果存在数组元素,则为变量分配真/假
- 如何在jquery中检查json中是否存在数组
- 如何检查多维数组中是否存在数组键
- 如何在json数据中检查任何列值使用angular js是否存在数组/集合
- 检查参数中是否存在数组
- 如果存在数组的元素,则从 mongodb 集合中检索项目(meteor js)