JavaScript Function 简写 | 青训营

203 阅读2分钟

今天上完第一节掘金课后重新返回去学了js 背景和我一样不够扎实的同学可以一起对照看。老师的第一节课讲的内容还是满深入的。

JavaScript Function 简写

通常函数的定义方法

var fn = function(...){
    ......    
}
var add = function(a,b){
    return a+b;
}
function fn(...){
    ......
}
function add(a,b){
    return a+b;
}

简写方法速记

将原函数的“function”关键字和函数名都删掉,并使用“=>”连接参数列表和函数体。

function add(a,b){
    return a+b;
}
//简写为:
(a,b)=>{//删掉了function和函数名
    return a+b;
}
var add = function(a,b){
    return a+b;
}
//简写为:
var add = (a,b)=>{ //删掉了function
    return a+b;
}

附加规则

  1. 当函数参数只有一个时,括号可以省略;但是没有参数时,括号不可以省略。
  2. 函数体(中括号)中有且只有一行return语句时,中括号及return 关键字可以省略。

一个参数的函数 let fn = function(a){ return a; }

let fn = (a)=>{
    return a;
}
//根据规则一,可以简写为:
let fn = a=>{
    return a;
}
//根据规则二,还可以简写为:
let fn = a=>a;

其他...

函数还能做很多事情。首先,它是个对象,这一知识点我们在中解释过,所以它和对象一样,也有属性,也可以赋值给变量。除此之外,函数可以自身当作参数传递,也具有返回值的特性(在react中常常出现,父函数传递给子函数)

总之,对象能做的它都能做,它还有自身的特性,能做更多的事情(例如:能作为参数传递,有返回值)

读后作业

看着很难但是分析之后其实规则挺少很简单,接下来请做几个题来巩固一下自己的能力吧!把下面的俩个函数按照上面的规则改变一下吧
 function add2(x, y) { return x + y; } 
 var add3 = function (x, y) { return x + y; };