를 사용하여 인수 매개 변수 ... 자바 스크립트에서는 함수 블록 자체에 매개 변수를 정의 할 필요가 없습니다. 따라서, 예를 들어, 다음 호출 :
myFunction(arg1, arg2, arg3, arg4);
는 법적으로 다음과 같은 함수에 전달 될 수 : 내가 기대하고 표시하기 위해 나는이 작업을 수행 할 때
myFunction() {
// do stuff here...
}
, 나는 보통 괄호에 코멘트를 배치 변수 인수 : 다음
myFunction (/* I am expecting variable arguments to be passed here */) {
// do stuff here...
}
, 당신은 다음과 같이 그 인수에 액세스 할 수 있습니다
myFunction (/* I am expecting variable arguments to be passed here */) {
if (arguments.length == 0) {
// naughty naughty, you were supposed to send me things...
return null;
}
myExpectedFirstArgument = arguments[0];
// maybe do something here with myExpectedFirstArgument
var whatEvah:String = myExpectedFirstArgument + ": "
for (i=1;i<arguments.length;i++) {
// now do something with the rest of the arguments, one
// at a time using arguments[i]
whatEvah = whatEvah + " and " + arguments[i];
}
// peace.
return whatEvah;
}
Wallah, 가변 인수.
그러나 질문의 요점은 실제로 변수 인수를 보내거나 실제 JSON (실제로 자바 스크립트 객체의 문자열 해석)을 만드는 번거 로움을 피할 필요가 없다고 생각합니다. 생성하고 실제 개체가 다음 필드 이름과 필드 값을 얻을 연관 배열로 참조 보내
myFunction(arg1, arg2) {
// do whatever with arg1
for (name in arg2) {
// name is now "fieldName1" or "fieldName2"
alert(name + ": " + x[name]);
}
}
희망이 도움이 : 이제 두 개의 매개 변수를 필요로 함수에 다음
var x = {};
x.fieldName1 = value1;
x.fieldName2 = value2;
// ... etc ...
을 .
Jeremy에게 감사드립니다. 나는 먼저 객체를 생성하고 그것을 전달하는 것을 정말 좋아합니다. 다른 곳에서도이 객체를 사용할 것입니다. –