函数

作者: 转移到CSDN名字丹丹的小跟班 | 来源:发表于2021-03-05 08:54 被阅读0次

函数参数的扩展

1.默认参数

function fn(a, b = 10) {
  console.log(a, b)
}
fn(10)  //10 10

只有在未传递参数,或者参数为 undefined 时,才会使用默认参数,null 值被认为是有效的值传递。

function fn(a, b = 10, c = 10) {
  console.log(a, b, c)
}
fn(10, undefined, null)  //10 10  null

函数参数默认值存在暂时性死区,在函数参数默认值表达式中,还未初始化赋值的参数值无法作为其他参数的默认值。

function f(x,y=x){
    console.log(x,y);
}
f(1);  // 1 1
function f(x=y){
    console.log(x);
}
f();  // ReferenceError: y is not defined

2. 不定参数用来表示不确定参数个数,形如,...变量名,由...加上一个具名参数标识符组成。具名参数只能放在参数组的最后,并且有且只有一个不定参数。

function f(...values){
    console.log(values.length); //values为一个纯数组
}
f(1,2);      //2
f(1,2,3,4);  //4

箭头函数

var f = a => a
   // 等价于
   var f = function (a) {
       return a
}

当箭头函数没有参数或者有多个参数,要用 () 括起来。

//没有参数
var f = () => {
    console.log('我是箭头函数')
    }
   // 等价于
   var f = function () {
       console.log('我是箭头函数')
}
//两个及两个以上的参数
var f = (a, b) => {
    console.log('我是箭头函数')
    }
   // 等价于
   var f = function (a, b) {
       console.log('我是箭头函数')
}

当箭头函数函数体有多行语句,用 {} 包裹起来,表示代码块,当只有一行语句,并且需要返回结果时,可以省略 {} , 结果会自动返回。

var f = a => a
 // 等价于
 var f = function (a) {
     return a
 }

当箭头函数要返回对象的时候,为了区分于代码块,要用 () 将对象包裹起来

// 报错
var f = (id,name) => {id: id, name: name};
f(6,2);  // SyntaxError: Unexpected token :
 
// 不报错
var f = (id,name) => ({id: id, name: name});
f(6,2);  // {id: 6, name: 2}

箭头函数不存在this,他的this是他的上下文,也就是父级的this,若是父级也是箭头函数,那么继续向上找,直到找到最外层window

相关文章

  • Excel(三)

    AND函数 OR函数 NOT函数 IF函数 频率分析函数FREQUENCY

  • if、else if、for、while、repeat函数

    ①if函数 ②else if函数 ③for函数 ④while函数 ⑤repeat函数

  • strsplit、mapply、paste、match函数

    strsplit函数 mapply函数 strsplit函数 mapply函数 paste函数 match函数 第...

  • Oracle中常用函数(SQL)

    Oracle函授有以下几个分类:数字函数、字符函数、日期函数、转换函数、集合函数、分析函数 数字函数: 字符函数:...

  • MySQL函数

    字符函数 数字运算函数 比较运算符和函数 日期时间函数 信息函数 聚合函数 加密函数 流程函数

  • BI-SQL丨AND & OR & IN

    AND函数 & OR函数 & IN函数 AND函数、OR函数和IN函数都可以理解是WHERE函数的补充,当然也可以...

  • Python之函数

    课程大纲 函数定义 函数的参数 函数的返回值 高阶函数 函数作用域 递归函数 匿名函数 内置函数 函数式编程 将函...

  • 函数基本知识

    函数 函数的定义: def 函数名() 函数的调用:函数名() #不能将函数调用放在函数定义上方 函数的文档注...

  • 积分表——不定期更新

    基本初等函数包括: 常函数: 幂函数 指数函数 对数函数 三角函数 反三角函数 I、反函数Ⅱ、复合函数:初等函数(...

  • MySQL基本使用

    函数 常用函数 数学函数 字符串函数 日期函数

网友评论

      本文标题:函数

      本文链接:https://www.haomeiwen.com/subject/ihfmfltx.html