JavaScript将键添加到数组中的每个值

时间:2018-07-17 02:05:33

标签: javascript

我在下面的数组中包含一个简单的数组。我要完成的工作是在每个数组值前放置一个键id,以实现类似这样的["id:a", "id:b","id:c","id:d"],是否有一种简单的方法来实现?任何帮助将不胜感激,谢谢。

var test = ['a','b','c','d']

5 个答案:

答案 0 :(得分:3)

您可以使用.map()

var test = ['a', 'b', 'c', 'd'];

function setID(item, index) {
  var fullname = "id: " + item;
  return fullname;
}

var output = test.map(setID);
console.log(output);

答案 1 :(得分:1)

只需使用 forEach 遍历数组并设置值:

var test = ['a','b','c','d']
test.forEach((v,i,arr)=>arr[i]=`id:${v}`)

console.log(test)

当然,标准的 for 循环也可以工作:

var test = ['a','b','c','d']

for ( var i=0, n=test.length; i<n; i++){
   test[i] = 'id:' + test[i]
}

console.log(test)

答案 2 :(得分:0)

使用地图创建一个新数组,并在字符串前添加“ id:”

var test = ['a','b','c','d'];

var newTest = test.map(function(item){return 'id:' +item})

console.log(newTest); // gives ["id": "a","id": "b","id": "c","id": "d"];

console.log(newTest[1]); // gives 1d: b;

答案 3 :(得分:0)

就像@klugjo所说的那样使用地图,就像这样:

var array1 = ['a','b','c','d'];

const map1 = array1.map(x => 'id:' + x);

console.log(map1);

答案 4 :(得分:0)

使用Array.from!这真的很简单,更快。

var test = ['a', 'b', 'c', 'd'];
var newTest = Array.from(test, val => 'id: '+ val);
console.log(newTest);