小程序使用JSON数组并添加key取出key
时间: 2023-05-17 14:04:59 浏览: 62
可以使用以下代码将JSON数组转换为对象数组,并添加key:
```javascript
var jsonArray = [{"name":"John", "age":30, "city":"New York"}, {"name":"Jane", "age":25, "city":"San Francisco"}];
var objArray = jsonArray.map(function(item) {
var obj = {};
obj["key"] = item.name + "_" + item.age;
Object.keys(item).forEach(function(key) {
obj[key] = item[key];
});
return obj;
});
console.log(objArray);
```
这段代码将会输出以下结果:
```javascript
[
{"key":"John_30", "name":"John", "age":30, "city":"New York"},
{"key":"Jane_25", "name":"Jane", "age":25, "city":"San Francisco"}
]
```
这样就可以通过key来访问每个对象了。
相关问题
小程序使用JSON并添加key取出key
可以使用JSON.parse()方法将JSON字符串转换为JavaScript对象,然后使用对象的属性名来获取对应的值。例如:
var jsonStr = '{"name":"张三","age":18}';
var jsonObj = JSON.parse(jsonStr);
console.log(jsonObj.name); // 输出:张三
在这个例子中,我们将一个包含"name"和"age"两个属性的JSON字符串转换为了一个JavaScript对象,然后使用对象的"name"属性来获取对应的值。
如果要添加一个新的属性,可以直接给对象赋值即可。例如:
jsonObj.gender = '男';
这样就给对象添加了一个"gender"属性,并将其值设置为"男"。
如果要将一个JavaScript对象转换为JSON字符串,可以使用JSON.stringify()方法。例如:
var jsonObj = {name: '张三', age: 18};
var jsonStr = JSON.stringify(jsonObj);
console.log(jsonStr); // 输出:{"name":"张三","age":18}
这样就将一个JavaScript对象转换为了一个JSON字符串。
js将json数组某一属性取出并去重
可以使用ES6中的Set数据结构和Array的map方法来实现。
假设有如下的JSON数组:
```javascript
const jsonArray = [
{id: 1, name: 'Apple'},
{id: 2, name: 'Banana'},
{id: 3, name: 'Apple'},
{id: 4, name: 'Orange'},
{id: 5, name: 'Banana'}
];
```
如果想要取出其中的name属性并去重,可以这样做:
```javascript
const uniqueNames = [...new Set(jsonArray.map(item => item.name))];
console.log(uniqueNames); // ['Apple', 'Banana', 'Orange']
```
首先使用Array的map方法将jsonArray中的每个元素映射为其name属性,得到一个新数组。然后使用Set数据结构将新数组去重,再将Set转为数组输出即可。