var a = [1, 4, 3, 2],
b = [0, 2, 1, 2]
var x = a.map(function(item, index) {
// In this case item correspond to currentValue of array a,
// using index to get value from array b
return item - b[index];
})
console.log(x);
var a = [1, 4, 3, 2],
b = [0, 2, 1, 2]
a.forEach(function(item, index, arr) {
// item - current value in the loop
// index - index for this value in the array
// arr - reference to analyzed array
arr[index] = item - b[index];
})
//in this case we override values in first array
console.log(a);
function subtract(operand1 = [], operand2 = []) {
console.log('array1', operand1, 'array2', operand2);
const obj1 = {};
if (operand1.length === operand2.length) {
return operand1.map(($op, i) => {
return $op - operand2[i];
})
}
throw new Error('collections are of different lengths');
}
// Test by generating a random array
function getRandomArray(total){
const pool = []
for (let i = 0; i < total; i++) {
pool.push(Math.floor(Math.random() * total));
}
return pool;
}
console.log(subtract(getRandomArray(10), getRandomArray(10)))
7条答案
按热度按时间pvabu6sv1#
如果你想找出两个集合之间的 * 集合差 *,也就是说,你想找出A中所有不在B中的元素:
如果你想知道A的元素和B的相应元素之间的算术差,那么请看其他张贴的答案。
ijnw1ujt2#
使用map方法map方法在其回调函数中接受三个参数,如下所示
mw3dktmi3#
For
前所未有的简单高效。查看此处:
JsPref - For Vs Map Vs forEach
doinxwow4#
这里,
map
返回第一个数组中每个数字的减法运算。**注意:**如果数组长度不同,则此操作无效
unhi4e5o5#
如果你想覆盖第一个表中的值,你可以简单地使用forEach方法来处理数组forEach。ForEach方法和map方法有相同的参数(element,index,array)。这和前面的答案类似,但这里我们不返回值,而是自己赋值。
mutmk8jj6#
使用ES6的一行程序,用于长度相等的数组:
v =数值,i =指数
x8diyxa77#
时间复杂度是
O(n)
你也可以把你的答案和一个大的数组集合进行比较。