이 장에서는 Javascript 함수의 매개변수를 소개합니다. 참고할 만한 가치가 있으니 도움이 필요한 분들에게 도움이 되길 바랍니다.
함수의 매개변수
매개변수 값의 경우 JavaScript는 유형 검사를 수행하지 않으며 모든 유형의 값이 매개변수에 전달될 수 있습니다.
함수 매개변수의 경우 너무 적으면 값을 얻지 못하는 매개변수 값이 정의되지 않습니다. 너무 많으면 추가 매개변수는 무시됩니다.
//调用函数时传入的实际参数 function add(num1, num2) { return num1 + num2; } //一切正常的调用方式 console.info(add(1, 2)); //3 //不检查参数的类型,字串和数字可以混用 console.info(add("1", 2)); //12 //多余参数被忽略 console.info(add(1, 2, 3)); //3 //少的参数被视为undefined //1+undefined=NaN console.info(add(1)); //NaN
매개변수 누락 여부 감지
정의되지 않았는지 판단
//检测参数是否缺失 function sayHello(name, message) { if (typeof message === 'undefined') { message = '你好!'; } console.info(name + "," + message); } sayHello("贾君鹏", "你妈喊你吃饭"); sayHello("贾君鹏"); //贾君鹏,你好!
인수 개체 매개변수 저장
인수 개체를 사용하여 원하는 수의 매개변수를 지원하는 함수를 작성하세요. 인수는 배열처럼 보이지만 실제로는 배열이 아니므로 많은 배열 메서드를 사용할 수 없습니다.
//保存参数的arguments对象 function sumNumbers() { var result = 0; for (var i = 0; i < arguments.length; i++) { result += arguments[i]; } return result; } console.info(sumNumbers(1, 2)); //3 console.info(sumNumbers(1, 2, 3)); //6
함수 객체의 길이 속성
arguments.length 함수가 받은 실제 매개변수의 개수
함수 이름 .length 함수 정의 형식 매개변수
//函数对象的length属性 function sayName(name){ console.info(name); } function sum(num1, num2){ return num1 + num2; } function sayHi(){ console.info("hi"); } console.info(sayName.length); //1 console.info(sum.length); //2 console.info(sayHi.length); //0
매개변수로서의 함수 객체
함수는 다른 함수의 매개변수로 사용할 수 있는 객체입니다
//作为参数的函数对象 function callSomeFunction(func, argu) { return func(argu); } function getGreeting(name) { return "Hello, " + name; } var result = callSomeFunction(getGreeting, "jxl"); console.info(result); //Hello,jxl
이름이 지정된/익명 함수를 함수 매개변수로 사용
var callTwice = function (otherFunc) { otherFunc(); otherFunc(); }; callTwice(function () { console.info("this is a function"); });
위 내용은 이 장의 전체 내용입니다. 자바스크립트 동영상 튜토리얼을 방문해 보세요!