Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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 如何将具有两个键/值对的对象推入数组?_Javascript_Arrays_Object - Fatal编程技术网

Javascript 如何将具有两个键/值对的对象推入数组?

Javascript 如何将具有两个键/值对的对象推入数组?,javascript,arrays,object,Javascript,Arrays,Object,我想把这个数组作为参数 var movies=[《黑客帝国》,《黑暗骑士》,《美丽心灵》,《美国馅饼》] 对于循环通过该数组并将标题作为对象推送到新数组中的函数,在过程中添加id(来自循环索引) 新的arr应该是这样的 [{title:matrix,id:0}',{title:the dark knight,id:1}',{title:a Beautive mind,id:2}',{title:american pie,id:3}] 这就是函数,我知道我有一个语法错误。但是在哪里呢 functi

我想把这个数组作为参数

var movies=[《黑客帝国》,《黑暗骑士》,《美丽心灵》,《美国馅饼》]

对于循环通过该数组并将标题作为对象推送到新数组中的函数,在过程中添加id(来自循环索引)

新的arr应该是这样的

[{title:matrix,id:0}',{title:the dark knight,id:1}',{title:a Beautive mind,id:2}',{title:american pie,id:3}]

这就是函数,我知道我有一个语法错误。但是在哪里呢

function addToList(arr) {
    var movieList = []

    for (var x of arr) {
        movieList{["titel"]=arr, ["id"]=x}
    }
    return movieList
}

您只需使用
.map()
即可获得所需的输出:

const data=['矩阵','黑暗骑士','美丽心灵','美国派']
const result=data.map((m,i)=>({title:m,id:i}));
控制台日志(结果)

.as控制台包装{max height:100%!important;top:0;}
您只需使用
.map()
即可获得所需的输出:

const data=['矩阵','黑暗骑士','美丽心灵','美国派']
const result=data.map((m,i)=>({title:m,id:i}));
控制台日志(结果)
.as控制台包装{最大高度:100%!重要;顶部:0;}
函数添加列表(arr){
var movieList=[]
对于(arr的var x){
movieList.push({titel:arr,id:x});
}
回归电影人
}
函数添加列表(arr){
var movieList=[]
对于(arr的var x){
movieList.push({titel:arr,id:x});
}
回归电影人

}
不使用
数组.map

 function addToList(arr) {
        var movieList = []

        for (var i in arr) {
            movieList[i]={title:arr[i], id:i}
        }
        return movieList
    }


不使用
array.map

 function addToList(arr) {
        var movieList = []

        for (var i in arr) {
            movieList[i]={title:arr[i], id:i}
        }
        return movieList
    }

语句迭代对象的值,而不是索引(属性)

您可以使用语句来迭代对象的索引(属性)

var movies=[《黑客帝国》、《黑暗骑士》、《美丽心灵》、《美国派》];
函数addToList(arr){
var movieList=[];
用于(arr中的var i){
movieList[i]={“title”:arr[i],“id”:i};
}
回归电影人;
}
console.log(addToList(movies))语句迭代对象的值,而不是索引(属性)

您可以使用语句来迭代对象的索引(属性)

var movies=[《黑客帝国》、《黑暗骑士》、《美丽心灵》、《美国派》];
函数addToList(arr){
var movieList=[];
用于(arr中的var i){
movieList[i]={“title”:arr[i],“id”:i};
}
回归电影人;
}

console.log(addToList(movies))您是否尝试打印输出并查看出了什么问题?当您使用语法:
movieList{..}
时,您希望发生什么?将任何对象添加到数组的方式相同。。将这两个概念分开,使之“清晰”。1) 使用中间表达式或变量创建对象;2) 将对象添加到目标阵列。一旦对这种分离有了很好的理解,问题就可以用几种不同的方式来解决。您是否尝试打印输出并查看出了什么问题?当您使用语法:
movieList{..}
时,您希望发生什么?将任何对象添加到数组的方式相同。。将这两个概念分开,使之“清晰”。1) 使用中间表达式或变量创建对象;2) 将对象添加到目标阵列。一旦这种分离被很好地理解,这个问题就可以用几种不同的方式来解决。现在还没有。。。地图还在未来的chapterNot里呢。。。地图在未来的章节中。确定一下:在第一种方法中,我将movieList数组的第I个元素设置为一个对象{},该对象包含titel作为键,第I个arr作为值,id作为键,I作为值。对吗?
i
只是一个数字。。。不依赖于array.THX。确定一下:在第一种方法中,我将movieList数组的第I个元素设置为一个对象{},该对象包含titel作为键,第I个arr作为值,id作为键,I作为值。对吗?
i
只是一个数字。。。不依赖于数组。