js中循环遍历数组对象,将数组对象中的某个属性每次都添加到json对象中,只是值不同,案例
时间: 2024-03-09 13:45:20 浏览: 17
假设有如下的数组对象:
```
let arr = [
{ id: 1, name: "John" },
{ id: 2, name: "Mary" },
{ id: 3, name: "Tom" }
];
```
现在需要循环遍历数组对象,将每个对象的 `id` 属性添加到一个 JSON 对象中,只是值不同。可以使用以下的代码实现:
```
let jsonObj = {};
for (let i = 0; i < arr.length; i++) {
jsonObj["id" + i] = arr[i].id;
}
console.log(jsonObj);
```
上面的代码中,我们首先定义了一个空的 JSON 对象 `jsonObj`。然后使用 `for` 循环遍历数组对象,将每个对象的 `id` 属性添加到 `jsonObj` 对象中,属性名使用了字符串拼接的方式,以保证每个属性名都是唯一的。
最终,`jsonObj` 中的属性如下所示:
```
{
"id0": 1,
"id1": 2,
"id2": 3
}
```
注意,在上面的代码中,我们使用了 `let` 来声明循环变量 `i`,这样可以避免变量作用域问题。如果使用 `var` 声明循环变量 `i`,则可能导致变量作用域不正确,从而影响代码的运行结果。
相关问题
vue中循环遍历出数组对象中的某个属性值组成新的数组
在Vue中,你可以使用`v-for`指令来循环遍历数组对象,并使用对象的属性值来创建新的数组。以下是一个示例:
假设你有一个名为`items`的数组对象,其中每个对象都有一个名为`name`的属性。你想要将所有`name`属性的值组成一个新的数组。
你可以在Vue模板中使用`v-for`指令来实现这个目的,如下所示:
```html
<template>
<div>
<ul>
<li v-for="item in items" :key="item.id">{{ item.name }}</li>
</ul>
<p>New Array: {{ names }}</p>
</div>
</template>
<script>
export default {
data() {
return {
items: [
{ id: 1, name: 'Apple' },
{ id: 2, name: 'Banana' },
{ id: 3, name: 'Orange' }
]
};
},
computed: {
names() {
return this.items.map(item => item.name);
}
}
};
</script>
```
在上面的示例中,我们使用`v-for`指令来循环遍历`items`数组,并通过`:key`绑定每个列表项的唯一标识符。
然后,我们在计算属性`names`中使用`map`函数来提取每个对象的`name`属性值,并返回一个新的数组。在模板中,我们可以访问这个新的数组并进行展示。
这样,你就可以将数组对象中的某个属性值组成新的数组了。
js循环遍历数组对象
JavaScript中,我们可以使用for循环和for...of循环来遍历数组对象。
使用for循环遍历数组对象的语法如下:
```javascript
const arr = [1, 2, 3, 4, 5];
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
```
使用for...of循环遍历数组对象的语法如下:
```javascript
const arr = [1, 2, 3, 4, 5];
for (const num of arr) {
console.log(num);
}
```
需要注意的是,for...of循环每次迭代都将返回一个值,而不是索引。