2017-12-15 20 views
-3

私の配列は= [-62,345,10]なので、0と-62の差と-62と345の差、そして345と10の差を見つける必要があるとします。これを行う方法 ?配列の要素の違いを見つけるには?

+1

これは書くのがあまり複雑ではありませんが、これまでに何を試しましたか?そして、望みの出力はどういうものですか?違いの配列? –

+0

'array [0] = - 62;配列[1] = 345; array [2] = 10; '、あなたはこれを望んでいますか? 'resultarray [0] =配列[0] -array [1]; resultarray [1] = array [1] -array [2] ' –

+0

希望の結果と試した内容を追加してください。 –

答えて

2

差分をマップし、指定されていない値の既定値をとることができます。

var array = [-62, 345, 10], 
 
    deltas = array.map((v, i, a) => v - (a[i - 1] || 0)); 
 
    
 
console.log(deltas);

0

あなたの配列で[0]を連結して、同じようにそれをマップすることができ、この

a = [-62, 345, 10]; 
 
j = 0; 
 
for (var i = 0; i < a.length; i++) { 
 

 
    console.log(j - a[i]); 
 
    j = a[i]; 
 
}

-1

を試してみてください。

var arr = [-62,345,10] 
 

 
var newArr = [0].concat(arr).slice(0, -1).map(function(elem, i) { 
 
    return arr[i] - elem; 
 
}) 
 

 
console.log(newArr)

+0

345-10 == -335? –

+0

10 - 345 = -335 –

0

あなたはarray#mapを使用することができます。 0からの最初の索引値減算および他の索引の場合は、前の数値から減算します。

var a = [-62,345,10]; 
 
var result = a.map((n, i, a) => i ? n - a[i-1] : 0 - n); 
 
console.log(result);

0

var a = [-62,345,10]; 
 
var result = a.map(function(v, i, a){ 
 
\t return (i==0 ? 0 : a[i-1]) - a[i]; 
 
}); 
 

 
console.log(result);

ここでは行きます! :)

関連する問題