>  기사  >  웹 프론트엔드  >  Javascript 함수의 매개변수

Javascript 함수의 매개변수

PHPz
PHPz원래의
2016-05-16 15:50:091315검색

이 장에서는 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");
  });

위 내용은 이 장의 전체 내용입니다. 자바스크립트 동영상 튜토리얼을 방문해 보세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

관련 기사

더보기