Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.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_Node.js_Json - Fatal编程技术网

Javascript 查找json中是否存在项

Javascript 查找json中是否存在项,javascript,arrays,node.js,json,Javascript,Arrays,Node.js,Json,我试图使用nodejs请求在JSON代码中搜索ip。例如,如果JSON代码console.log中有127.0.0.1('True') 如果不是JSON代码控制台.Log中的127.0.0.1('False) 我不知道我的代码有什么问题 const request = require('request') request('http://localhost/checkdir.php?ips=1', function(error, res, body) { var ip = '127.0

我试图使用nodejs请求在JSON代码中搜索ip。例如,如果JSON代码console.log中有127.0.0.1('True') 如果不是JSON代码控制台.Log中的127.0.0.1('False) 我不知道我的代码有什么问题

const request = require('request')

request('http://localhost/checkdir.php?ips=1', function(error, res, body) {
    var ip = '127.0.0.1';
   var ips = JSON.parse(body);
    if(ips == ip.ip){
        console.log('FOUND 1 MATCH IP ID IS'.ip.id);
    }
})
中的json代码

是[{“id”:“21”,“ip”:“127.0.0.1},{“id”:“22”,“ip”:“127.0.0.2}]

使用
查找

request('http://localhost/checkdir.php?ips=1', function(error, res, body) {
   var ip = '127.0.0.1';
   var ips = JSON.parse(body);
   const match = ips.find(item => item.ip == ip);
   if (match) {
     console.log('FOUND 1 MATCH IP ID IS' + match.id);
   }
})

如果您有一个项目数组,并且只想知道是否满足某个
条件,则可以使用。它将根据是否满足该条件返回布尔值:

let ips=[{“id”:“21”,“ip”:“127.0.0.1”},{“id”:“22”,“ip”:“127.0.0.2”}]
//真的
log(ips.some(addr=>addr.ip==“127.0.0.1”))
//假的

console.log(ips.some(addr=>addr.ip==“127.0.0.9”))
您可以使用字符串搜索()方法:

当没有匹配项时,该方法返回-1。详细信息。

请尝试此代码

var obj =  [
{"id":"21","ip":"127.0.0.1"},
{"id":"22","ip":"127.0.0.2"}
];
var searchedIp = '127.0.0.1';
for (var i = 0; i < obj.length; i++){
  if (obj[i].ip == searchedIp){
  alert('true');
  return;
  }
}
alert('false');
var obj=[
{“id”:“21”,“ip”:“127.0.0.1”},
{“id”:“22”,“ip”:“127.0.0.2”}
];
var searchedIp='127.0.0.1';
对于(变量i=0;i
if(ips==ip.ip)
为什么
ip.ip
?它应该是
if(ips[index].ip==ip)
。您的代码
控制台.log中有很多打字错误('找到一个匹配的ip ID是'.ip.ID');
什么是
.ip。它是
,您需要通过
在控制台中分离参数,
不是
ip。ip
是未定义的。n=ips.search(ip);^TypeError:ips.search不是一个函数
var obj =  [
{"id":"21","ip":"127.0.0.1"},
{"id":"22","ip":"127.0.0.2"}
];
var searchedIp = '127.0.0.1';
for (var i = 0; i < obj.length; i++){
  if (obj[i].ip == searchedIp){
  alert('true');
  return;
  }
}
alert('false');