7
私はオンラインでいくつかのjavascript演習を行っていました(codewars.com)。 1つの問題は、配列オブジェクトの配列を取得し、配列全体から1つのレベルを削除するようにユーザーに求めました。具体的に「[]」をパラメータとして使用するにはどうすればよいですか?
[] /* becomes */ []
[[1, 2, 3], ["a", "b", "c"], [1, 2, 3]] /* becomes */ [1, 2, 3, "a", "b", "c", 1, 2, 3]
[[3, 4, 5], [[9, 9, 9]], ["a,b,c"]] /* becomes */ [3, 4, 5, [9, 9, 9], "a,b,c"]
私はconcatメソッドについて学ぶことになったが、最も人気のあるソリューションは、この文を使用し...
function (arr){
return [].concat.apply([],arr);
}
誰かがここ[]
の使用方法を説明していただけますか?私はこれがどのように正しい結果を生み出すのかを理解することはできません(そしてそれはページ上に説明を与えません)。私は空の括弧がパラメーターとラベル配列として使用される他の多くの時間があることを知っているので、ここでの使用法を理解すれば、将来自分自身でそれを使用できるようになるでしょう。
大きな説明!あなたが行ったときに更新して以来、私はいくつかの読みが必要でした。 '[] .concat'と'([、arr) 'の' [] 'が同じ配列オブジェクトであれば、最初から確かに分かりませんでした。 'Array.prototype'と' call'を使って書き直しを続けるあなたの継続は、本当に私にそれを完全に把握させてくれたように、私にはもっとよく知られているように見えます。 – JoeL