当先锋百科网

首页 1 2 3 4 5 6 7

js 查询 json 数据的方式

https://zhuanlan.zhihu.com/p/629242488

在 JavaScript 中,可以使用多种方式来查询 JSON 数据。以下是一些常见的查询方式:

  1. 使用点号(.)来访问 JSON 对象中的属性:
var data = {
  name: 'John',
  age: 30
};

console.log(data.name); // 输出 John
console.log(data.age); // 输出 30
  1. 使用方括号([])来访问 JSON 对象中的属性:
var data = {
  name: 'John',
  age: 30
};

console.log(data['name']); // 输出 John
console.log(data['age']); // 输出 30
  1. 使用 Array.find() 方法来查找符合条件的数组元素:
var data = [
  { name: 'John', age: 30 },
  { name: 'Mary', age: 25 },
  { name: 'Peter', age: 35 }
];

var result = data.find(function(item) {
  return item.name === 'Mary';
});

console.log(result); // 输出 { name: 'Mary', age: 25 }
  1. 使用 Array.filter() 方法来查找符合条件的数组元素:
var data = [
  { name: 'John', age: 30 },
  { name: 'Mary', age: 25 },
  { name: 'Peter', age: 35 }
];

var result = data.filter(function(item) {
  return item.age > 30;
});

console.log(result); // 输出 [{ name: 'Peter', age: 35 }]
  1. 使用递归函数来查找嵌套的 JSON 对象或数组:
var data = {
  name: 'John',
  age: 30,
  address: {
    city: 'New York',
    state: 'NY'
  },
  hobbies: ['reading', 'music']
};

function search(obj, key) {
  for (var prop in obj) {
    if (prop === key) {
      console.log(obj[prop]);
    } else if (typeof obj[prop] === 'object') {
      search(obj[prop], key);
    }
  }
}

search(data, 'city'); // 输出 New York
search(data, 'hobbies'); // 输出 ['reading', 'music']

以上是一些常见的查询 JSON 数据的方式,根据实际需求选择合适的方式进行查询。