js函数-参数默认值

2023-06-05,,

1. 在es6之前必须通过函数内部实现

就像以下的几种情况:

function example(a,b){
var a = arguments[0] ? arguments[0] : 1;//设置参数a的默认值为1
var b = arguments[1] ? arguments[1] : 2;//设置参数b的默认值为2
return a+b;
}
function example(name,age){
name=name||'貂蝉';
age=age||21;
alert('你好!我是'+name+',今年'+age+'岁。');
}
function example(name,age){
if(!name){name='貂蝉';}
if(!age){age=21;}
alert('你好!我是'+name+',今年'+age+'岁。');
}

2. 在ES6中可以像其它编程语言那样直接使用默认参数了

  在class的构造器中使用默认参数

1   class Person {
2 constructor(name="顺", age=18) {
3 this.name = name
4 this.age = age
5 }
6 }
7 const P1 = new Person()
8 console.log(P1.name) //顺

  构造函数中,(适用于项目中有一个古老的方法,但是现在要求根据某个条件来改变这个方法的逻辑,则只需要给这个函数一个默认值即可,不需要通篇找到这个方法去改)

 1   isHandle(false) //参数为false,则实参flag接收的为false
2
3 isHandle()
4
5 function isHandle(flag = true) { //默认为true,调用函数时不传默认为true,
6 if(flag) {
7 //flag == true 时的逻辑
8 } else {
9 //flag == false 时的逻辑
10 }
11 }

js函数-参数默认值的相关教程结束。

《js函数-参数默认值.doc》

下载本文的Word格式文档,以方便收藏与打印。