[JS]14強パラメータ
5491 ワード
arguments
論争とは何ですか.
:定義された名前または属性を持つオブジェクト.関数で使用可能
:配列と似ていますが、配列ではありません.(類似アレイ)
ex1) arguments[0]
// : 함수로 전달된 첫 번째 인자를 알 수있다.
ex2) arguments.length
// : 인자의 개수를 알 수 있다.
function sum(){
var i, _sum = 0;
for(i = 0; i < arguments.length; i++){
document.write(i+' : '+arguments[i]+'<br />');
_sum += arguments[i];
}
return _sum;
}
// JS는 유연하므로, 인자의 값을 아무렇게나 지정해도 에러 발생X
document.write('result : ' + sum(1,2,3,4)); // 10
/* 디버깅
arguments.length = 4
⒈_sum = arguments[1]
⒉_sum = arguments[1] + arguments[2]
⒊_sum = arguments[1] + arguments[2] + arguments[3]
⒋_sum = arguments[1] + arguments[2] + + arguments[3] + arguments[4] = 10
*/
cf.パラメータvsパラメータ(arguments)
// 매개변수 vs 인자
// (보통은 같은 의미로 쓰이지만) 엄격히 구분해보자!
function a(arg) {...} // a : 매개변수
a(1); // 1 : 인자
パラメータ数
function one(arg1){
console.log(
'one.length', one.length, // 1
'arguments', arguments.length // 2
);
}
one(val1, val2);
Reference
この問題について([JS]14強パラメータ), 我々は、より多くの情報をここで見つけました https://velog.io/@soodev9_6/JS-1404강-argumentsテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol