如何更改JS数组(如Ruby"危险"方法,例如"!")
示例:
如果我有这个:
var arr = [1,2,3]
我该怎么做:
arr === [2,4,6]
(假设我有一个适当的加倍数的函数)一步,而不再做任何变量?
答案 0 :(得分:2)
智能Array.prototype.map()
和作业即可。
map()
方法创建一个新数组,其结果是在此数组中的每个元素上调用提供的函数。
var arr = [1, 2, 3];
arr = arr.map(function (a) {
return 2 * a;
});
document.write('<pre>' + JSON.stringify(arr, 0, 4) + '</pre>');
&#13;
答案 1 :(得分:1)
使用Array.prototype.forEach()
,第三个参数是this
:输入数组
var arr = [1, 2, 3];
arr.forEach(function(el, index, array) {
array[index] = el * 2
});
console.log(arr)
答案 2 :(得分:0)
map()返回 new 数组,但如果回调函数对数组的元素起作用,它也可以就地修改数组:
function double(el, i, array) {
array[i]= el * 2;
} //double
var arr= [1, 2, 3];
arr.map(double);
console.log(arr); // [2, 4, 6]
&#13;