2017-09-22 14 views
0

マップコードの中でelementが参照するものを親切に説明できますか?私はidxが配列のインデックスであり、arrが配列であると信じています。マップ関数は3つのパラメータを使用して配列の値の順序を逆にする方法

この関数の目的は、配列内の整数を逆にすることです。 arr[(arr.length - 1) - idx])が配列内のインテンジャーの順序を逆にする方法を教えてください。

パラメータ(element, idx, arr)がどのように配列内の整数を逆転させるのかを理解できるように、基本レベルで説明してください。

function reverse3(array) { 
 
    return array.map((element, idx, arr) => arr[(arr.length - 1) - idx]); 
 
} 
 

 
console.log(reverse3([5, 4, 3]));

element
+0

[map'のMDNのドキュメント](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map)は良いです。 – Andy

+0

これは、マップメソッドが何を行うかを説明しています.https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map – Adarsh

答えて

1

the documentationによって示されるように、アレイ(arr)の指定したインデックス(idx)で目的とします。

例えば:

size - idx = new_idx 

8 - 0 = 8 
8 - 1 = 7 
8 - 2 = 6 
8 - 3 = 5 
8 - 4 = 4 
8 - 5 = 3 
8 - 6 = 2 
8 - 7 = 1 
8 - 8 = 0 
:あなたは、任意の数(配列のサイズを)取ると、その番号に0から任意の他の番号を引いた場合、あなたは順序が逆になりますので、

は配列を逆arr[(arr.length - 1) - idx]

ラムダ式の-1は、配列が1ではなく0から索引付けされているため、上記の配列は実際にはサイズ9の配列であり、-1がすでに含まれているためです。

+0

こんにちはドラコ!大変ありがとうございました。あなたは私のためにそれを本当に簡単に素敵に壊しました。私は '=>'は深い意味がないと思いますか?地図の構造の一部としてはちょうどそこにありますか? – appletree

+0

実際には、mozillaのドキュメントよりもはるかに優れた仕事をしてくれました。もし私がそれに頼らなければならないのであれば、私は決して質問に答えなかったでしょう。本当にありがとう!! – appletree

+0

@appletree '=>'は[ラムダ式](https://www.codeproject.com/Tips/298963/Understand-Lambda-Expressions-in- minutes)を示します。いくつかの悪用を見たい場合は、[code golf](https://codegolf.stackexchange.com/questions/132090/lets-play-rummikub/132187#132187)を参照してください。 – Draco18s

関連する問題