함수 매개변수에서 확산 연산자와 구조 분해 할당을 모두 사용하면 왜 이점이 있나요?
P粉775723722
2023-08-16 16:27:57
<p>이 구문이 계속 발생하지만 정확히 무엇을 하는지 이해하는 데 어려움을 겪고 있습니다. </p>
<pre class="brush:php;toolbar:false;">수출 클래스 SomeClass는 SomeParent를 확장합니다.
생성자(...[구성]) {
// 코드의 "구성" 줄만 참조합니다.
}
}</pre>
<p>Node REPL에서 시도한 후 다음 두 가지 작성 방법 간에 차이가 없다는 것을 알았습니다. </p>
<pre class="brush:php;toolbar:false;">function foo(...[bar]) { console.log(bar) }</pre>
<p>...그리고...</p>
<pre class="brush:php;toolbar:false;">function foo(bar) { console.log(bar) console.log(arguments) }</pre>
<p>...그럼 어떤 역할을 합니까? </p>
무의미한 것 같네요. 이와 관련하여 코드 작성자에게 의도가 무엇인지 물어보고 최소한 의견을 남겨야 합니다.
그러나 실제로는 약간의 차이가 있습니다. 나머지 매개변수는 함수의 매개변수 수에 포함되지 않습니다. 그러므로
(function(bar){}).length
是1
,而(function(...[bar]){}).length
是0
.