如何从数组创建 JS 对象

我有两个数组


const time = ['00:00', '00:30', '01:00', '01:30']


const cost = [1.40, 5.00, 2.00, 3.00]

我想将它们合并到一个对象数组中,键如下:


result = [

    {

        time: '00:00',

        cost: 1.40

    },

    {

        time: '00:30',

        cost: 5.00

    },

    {

        time: '01:00',

        cost: 2.00

    },

    {

        time: '01:30',

        cost: 3.00

    }

]


HUH函数
浏览 109回答 4
4回答

Smart猫小萌

您可以尝试使用Array.prototype.map():该map()方法创建一个新数组,其中填充了对调用数组中的每个元素调用提供的函数的结果。const time = ['00:00', '00:30', '01:00', '01:30'];const cost = [1.40, 5.00, 2.00, 3.00];var result = time.map((t, i)=>({time: t, cost: cost[i]}));console.log(result);

当年话下

          const time = ['00:00', '00:30', '01:00', '01:30'];            const nums = [1.99, 5.11, 2.99, 3.45 ];            const newArray = [];            time.forEach((element, index) => {                newArray.push({                    time: element,                    cost: nums[index]                })            })            console.log(newArray)            

猛跑小猪

可以通过以下方式完成:-const time = ['00:00', '00:30', '01:00', '01:30']const cost = [1.40, 5.00, 2.00, 3.00]let array = []for(let i=0; i<4; i++){&nbsp; let obj = {}&nbsp; obj.time = time[i]&nbsp; obj.cost = cost[i]&nbsp; array.push(obj)}console.log(array)输出 -[&nbsp; { time: '00:00', cost: 1.4 },&nbsp; { time: '00:30', cost: 5 },&nbsp; { time: '01:00', cost: 2 },&nbsp; { time: '01:30', cost: 3 }]

互换的青春

您可以遍历两个数组之一,然后将对象填充到声明的数组中,如下所示。const time = ['00:00', '00:30', '01:00', '01:30'];const cost = [1.4, 5.0, 2.0, 3.0];let objArr = [];time.forEach((t, i) => {&nbsp; objArr[i] = {&nbsp; &nbsp; time: t,&nbsp; &nbsp; cost: cost[i],&nbsp; };});console.log(objArr);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript