Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在JSON字符串化数组中查找值_Javascript_Arrays_Json_Associative Array - Fatal编程技术网

Javascript 在JSON字符串化数组中查找值

Javascript 在JSON字符串化数组中查找值,javascript,arrays,json,associative-array,Javascript,Arrays,Json,Associative Array,我想在JSON stringify数组中找到一个值 [{"id":"432","temperature":"1","humidity":"1","createat":"0000-00-00 00:00:00"},{"id":"433","temperature":"22.00","humidity":"48","createat":"2015-10-11 19:49:57"},{"id":"434","temperature":"22.40","humidity":"48","createat"

我想在JSON stringify数组中找到一个值

[{"id":"432","temperature":"1","humidity":"1","createat":"0000-00-00 00:00:00"},{"id":"433","temperature":"22.00","humidity":"48","createat":"2015-10-11 19:49:57"},{"id":"434","temperature":"22.40","humidity":"48","createat":"2015-10-11 19:52:02"},{"id":"435","temperature":"22.40","humidity":"48","createat":"2015-10-11 19:55:26"},{"id":"436","temperature":"22.00","humidity":"48","createat":"2015-10-11 19:58:50"},{"id":"437","temperature":"22.00","humidity":"48","createat":"2015-10-11 20:02:14"},{"id":"438","temperature":"22.50","humidity":"51","createat":"2015-10-11 21:23:15"},{"id":"439","temperature":"22.50","humidity":"50","createat":"2015-10-11 21:24:37"},{"id":"440","temperature":"22.50","humidity":"51","createat":"2015-10-11 21:26:17"},{"id":"441","temperature":"22.50","humidity":"51","createat":"2015-10-11 21:26:41"}]
我得到这个值的想法是知道我正在添加的内容是否还没有添加

....

var jsonArray = [{"id":"432","temperature":"1","humidity":"1",.....

var isPresent = false;
$.each(jsonArray, function(i,v){
    if(jsonArray[i].id == newObject.id){
        isPresent = true;
    }
});
if(!isPresent){
    jsonArray.push(newObject);
}

....
编辑:这里有一个
propertyExists
函数:

var propertyExists = function(stringifiedJson, id, property) {
  // parse the stringified JSON into a JavaScript object
  parsedJson = JSON.parse(stringifiedJson);
  // check if the property exists for a given ID
  for(var i = 0; i < parsedJson.length; i += 1) {
    if(parseInt(parsedJson[i].id) === parseInt(id)) {
      return (typeof parsedJson[i][property] !== 'undefined')
    }
  }
  return false;
}

// stringified json
var stringifiedJson = '[{"id":"432","temperature":"1","humidity":"1","createat":"0000-00-00 00:00:00"},{"id":"433","temperature":"22.00","humidity":"48","createat":"2015-10-11 19:49:57"},{"id":"434","temperature":"22.40","humidity":"48","createat":"2015-10-11 19:52:02"},{"id":"435","temperature":"22.40","humidity":"48","createat":"2015-10-11 19:55:26"},{"id":"436","temperature":"22.00","humidity":"48","createat":"2015-10-11 19:58:50"},{"id":"437","temperature":"22.00","humidity":"48","createat":"2015-10-11 20:02:14"},{"id":"438","temperature":"22.50","humidity":"51","createat":"2015-10-11 21:23:15"},{"id":"439","temperature":"22.50","humidity":"50","createat":"2015-10-11 21:24:37"},{"id":"440","temperature":"22.50","humidity":"51","createat":"2015-10-11 21:26:17"},{"id":"441","temperature":"22.50","humidity":"51","createat":"2015-10-11 21:26:41"}]';

console.log(propertyExists(stringifiedJson, 432, 'humidity'));
var propertyExists=function(stringifiedJson,id,property){
//将字符串化的JSON解析为JavaScript对象
parsedJson=JSON.parse(stringifiedJson);
//检查给定ID的属性是否存在
对于(变量i=0;i
var jsonText='[{“id”:“432”,“温度”:“1”,“湿度”:“1”,“createat”:“0000-00-00:00:00:00”},{“id”:“433”,“温度”:“22.00”,“湿度”:“48”,“createat”:“2015-10-11 19:49:57”},{“id”:“434”,“温度”:“22.40”,“湿度”:“48”,“createat”:“2015-10-11 19:52:02”},{“id”:“435”,“温度”:“22.40”,“湿度”:“48”,“createat”:2015-10-11 19:55:26,{id:“436”,“温度:”“22.00”,“湿度:”“48”,“湿度:”“51”,“温度:”“22.50”,“湿度:”“51”,“温度:”“22.50”,“湿度:”“50”,“湿度:”“51”,“湿度:”“22.50”,“湿度:”“22.50”,“湿度:”“50”,“湿度:”“22.50”2015-10-11 21:24:37“},{“id”:“440”,“温度”:“22.50”,“湿度”:“51”,“创建时间”:“2015-10-11 21:26:17”},{“id”:“441”,“温度”:“22.50”,“湿度”:“51”,“创建时间”:“2015-10-11 21:26:41”}
函数hasPropValue(数组、属性、值){
返回数组.some(函数(obj){
返回对象hasOwnProperty(prop)&&obj[prop]==值;
});
}

document.write(hasPropValue(JSON.parse(jsonText),'id','432');
迭代并检查属性。为什么不干脆
JSON.parse()
?@Guillermo是否要检查
javascript
中的值,并添加任何试图获取值的代码只有我想在数组@mikeBy'word'中找到一个词,你是说“id、温度、湿度……等等”吗?因为这些都是属性,可以使用
hasOwnProperty()找到它们
用“word”我指的是温度id或湿度@A的值。OThere没有jQuery标记或请求,还有自ES5以来内置的Array.prototype.forEach。更合适的是。code–只有答案不受欢迎,你应该解释为什么你的答案解决了OP的问题。我只想知道在wh中是否存在一个值这个答案告诉你。写着
//检查属性是否存在的部分
hasPropValue(JSON.parse(jsonText), 'id', '432');