RESTパラメータ構文の理解
13046 ワード
RESTパラメータ構文へようこそ.それは、広げられたオペレーターのようです!
...を除く.
私はJavaScript言語で
関数に引数を渡す必要があるとしましょう.それは残りのパラメータを使用するときです!
利点の一つは、
内部の引数の数を見ることができます.
1つは、
あなたが破壊的な割り当ての上で速いリフレッシュを必要とするならば、このポストをチェックしてください.
このように、破壊と残りのパラメータを一緒に使用できます.
破壊された期待された引数を含んでいないならば、それは未定義の参照に終わります.
そして、あなたはそれを持っている!上の例で見ることができるように、残りの部分との間の主な違いは、場所です.
スプレッド構文は関数の中で、または関数を呼び出すときに現れることができます.RESTパラメータ構文は関数シグネチャ自体に制限されます.どちらが使用されているかを判断しようとしている場合は、そのことを覚えておいてください.
あなたがより良い概念を理解するのを助けたことを願っています.
いつものように、このような概念に興味があれば、これらの記事をチェックしてください.
5拡大演算子の用途
ローリー・ 月10日・ 3分読む
#javascript
#webdev
#productivity
#learning
...を除く.
私はJavaScript言語で
...
シンボルの繰り返し使用を正当化していないことを前向きに言いたい.しかし、うまくいけば、このポストは、どのように広がると残りの部分が異なるが、似て理解するのに役立ちます.休憩用ユースケース
関数に引数を渡す必要があるとしましょう.それは残りのパラメータを使用するときです!
function testRest(arg1, arg2, ...otherArgs) {
console.log(arg1) // 1
console.log(arg2) // 2
console.log(otherArgs) // [3, 4, 5]
}
testRest(1, 2, 3, 4, 5)
本実施例では、arg1
およびarg2
が予想通り通過され、それからすべての追加の引数がotherArgs
アレイに追加される.利点の一つは、
otherArgs
は本当に配列です.つまり、すべての配列関数が利用可能です.内部の引数の数を見ることができます.
function testRest(arg1, arg2, ...otherArgs) {
const numOfArgs = otherArgs.length() // 3
}
testRest(1, 2, 3, 4, 5)
また、配列のプロトタイプ関数を使用して操作することもできます.map
、filter
、reduce
、flat
など.単一追加引数
1つは、
otherArgs
が常に配列を作成するということです.つまり、単一の引数が配列でラップされることになります.function testRest(arg1, arg2, ...otherArgs) {
console.log(arg1) // 1
console.log(arg2) // 2
console.log(otherArgs) // [3]
}
testRest(1, 2, 3)
さらに、どんな追加引数も含めないなら、空の配列に終わります.function testRest(arg1, arg2, ...otherArgs) {
console.log(arg1) // 1
console.log(arg2) // 2
console.log(otherArgs) // []
}
testRest(1, 2)
破壊を覚えていますか?
あなたが破壊的な割り当ての上で速いリフレッシュを必要とするならば、このポストをチェックしてください.
3破壊課題の強力な例
ローリー・ Jun 11 ' 19・ 2分読む
#javascript
#webdev
#productivity
#beginners
このように、破壊と残りのパラメータを一緒に使用できます.
function testRest(...[first, second, third]) {
console.log(first) // 1
console.log(second) // 2
console.log(third) // 3
}
testRest(1, 2, 3)
破壊は、引数がそこにあることを期待します.あなたがその契約を破るならば、あなたは何を予想するべきかについてわかっていなければなりません.破壊された期待された引数を含んでいないならば、それは未定義の参照に終わります.
function testRest(...[first, second, third]) {
console.log(first) // 1
console.log(second) // 2
console.log(third) // undefined
}
testRest(1, 2)
あなたが破壊したものを越えて引数を含めると、その引数は削除されます.function testRest(...[first, second, third]) {
console.log(first) // 1
console.log(second) // 2
console.log(third) // 3
// 4 is not destructured
}
testRest(1, 2, 3, 4)
結論
そして、あなたはそれを持っている!上の例で見ることができるように、残りの部分との間の主な違いは、場所です.
スプレッド構文は関数の中で、または関数を呼び出すときに現れることができます.RESTパラメータ構文は関数シグネチャ自体に制限されます.どちらが使用されているかを判断しようとしている場合は、そのことを覚えておいてください.
あなたがより良い概念を理解するのを助けたことを願っています.
いつものように、このような概念に興味があれば、これらの記事をチェックしてください.
スプライン!スライス!シュート、私はシフトを意味!
ローリー・ Jul 30 ' 19・ 4分読む
#webdev
#javascript
#learning
#productivity
ループしましょう。…のためにof
ローリー・ Jul 16 ' 19・ 4分読む
#javascript
#webdev
#productivity
#learning
ディープ対浅いコピー
ローリー・ Jul 24 ' 19・ 4分読む
#javascript
#webdev
#learning
#beginners
Reference
この問題について(RESTパラメータ構文の理解), 我々は、より多くの情報をここで見つけました https://dev.to/laurieontech/understanding-rest-parameter-syntax-1apnテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol