首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

缩短箭头函数的小诀窍

在某些情况下,你可以完全省略: 参数括号 (param1, param2) return 关键字 甚至大括号 { }。 下面就让我们探讨一下如何使箭头函数简洁明了、易于阅读。...减少花括号 return箭头函数主体内仅包含一个表达式时,可以去掉花括号 {} return 关键字。 不必担心会忽略 return,因为箭头函数会隐式返回表达式评估结果。...`是一个简洁的粗箭头方法定义。省略了其单个参数 who 周围的一对括号,以及大括号 {} return关键字。 5. 简洁并不总是意味着可读性好 我喜欢简洁的箭头函数可以立即展示该函数的功能。...否则你可能会遇到可读性问题,尤其是在多个嵌套的简洁箭头函数的情况下。 ? JavaScript代码可读性 我更喜欢可读性而不是简洁,因此有时我会故意保留大括号 return 关键字。...结论 箭头函数以提供简短定义的能力而闻名。 使用上面介绍的诀窍,可以通过删除参数括号、花括号或 return 关键字缩短箭头函数。 你可以将这些诀窍与粗箭头方法放在一起使用。

58020
您找到你想要的搜索结果了吗?
是的
没有找到

js 箭头函数详解

(a, b) => { return a + b; } 箭头函数简洁的语法对开发者来说是十分友好的,从上面的例子可以得知箭头函数的简单用法: (参数) => { 函数 } 2....箭头函数的一些用法 3. 省略包含参数的小括号 如果只有一个参数,那也可以不用括号。...省略包含函数大括号 箭头函数可以不用大括号,但这样会改变函数的行为。使用大括号就说明包含“函数”,可以在一个函数中包含多条语句,跟常规的函数一样。...省略大括号箭头后面就只能有一行代码; 省略大括号会隐式返回这行代码的值; 省略大括号不能写return。...箭头函数不能使用arguments 如果函数是使用箭头语法定义的,那么传给函数的参数将不能使用 arguments 关键字访问: // 普通函数 let sum = function() { return

1.2K10

es6箭头函数详解_es6的新特性

使用ES6箭头函数语法定义函数,将原函数的“function”关键字函数名都删掉,并使用“=>”连接参数列表函数。...var fn1 = (a, b) => { return a + b } (a, b) => { return a + b } 当函数参数只有一个,括号可以省略;但是没有参数时,括号不可以省略...箭头函数有两种格式,一种只包含一个表达式,省略掉了{ … }return。...还有一种可以包含多条语句,这时候就不能省略{ … }return () => return 'hello' (a, b) => a + b (a) => { a = a + 1 return...注意,用小括号包含大括号则是对象的定义,而非函数主体 x => {key: x} // 报错 x => ({key: x}) // 正确 箭头函数看上去是匿名函数的一种简写,但实际上,箭头函数匿名函数有个明显的区别

27020

Salesforce Javascript(二) 箭头函数

这里的 reduce方法里面需要添加的就是一个函数,我们在这里就使用箭头函数去搞定这个功能,使整体代码看上去更简洁。两个参数使用()包含,方法体使用大括号{}包含逻辑。...elements.map((element) => { return element.length; }); // [8, 6, 7, 9] // 当箭头函数只有一个参数时,可以省略参数的圆括号...elements.map(element => { return element.length; }); // [8, 6, 7, 9] // 当箭头函数函数只有一个 `return` 语句时...,可以省略 `return` 关键字方法体的花括号 elements.map(element => element.length); // [8, 6, 7, 9] 除了这种方式的箭头函数箭头函数可以有一个简写或者常见的块体...比如我们常规的函数写法为: var func = (x, y) => { return x + y; }; //常规编写 明确的返回值 一个参数使用箭头函数可以省略成 var func = x => x

70031

25个实用的JavaScript开发小技巧

与使用function关键字声明函数不同,使用箭头函数语法会更清晰: // LONGER FORM function greetLong(name) { console.log(`Hi, ${name...}`); } // SHORTHAND const greetShort = name => console.log(`Hi, ${name}`); 注意:在本例中,由于函数中只有一个表达式,你可以省略大括号...13、不带返回关键字返回 使用箭头函数时,如果return函数中只有一个表达式,则可以省略关键字函数的花括号: // LONGER FORM function toPoundsLong(kilos)...) } pickUp("Mango"); // -> I picked up a Mango pickUp(); // -> I picked up a Banana 顺便说一句,你还可以使用箭头函数使其更短...LONGER FORM const num = parseInt("1000"); // SHORTHAND const num = +"1000"; 我想将这个速记包括在列表中,但人们可能会争论它是否有用

72420

箭头函数

可以省略大括号 function sum(num1, num2) { return num1 + num2; } //es6写法 const sum = (num1, num2)...=> num1 + num2; ​ 如果形参只有一个,可以省略小括号 function fn (v) { return v; } //es6写法 const fn = v => v...; ​ 箭头函数不绑定this关键字箭头函数中的this,指向的是函数定义位置的上下文this const obj = { name: '张三'} function fn () { console.log...(this);//this 指向 是obj对象 return () => { console.log(this);//this 指向 的是箭头函数定义的位置,那么这个箭头函数定义在...this,箭头函数中的this指向是它所定义的位置,可以简单理解成,定义箭头函数中的作用域的this指向谁,它就指向谁 箭头函数的优点在于解决了this执行环境所造成的一些问题。

1.1K20

JS 语法糖 1 —— 箭头函数

因为它的定义包含一个箭头: var f = v => v; // 等同于 var f = function (v) { return v; }; 箭头函数相当于匿名函数简化函数定义。...还有一种可以包含多条语句,这时候就不能省略{ ... }return。...当通过 new 调用函数时,执行 construct 方法,创建一个实例对象,然后再执行函数,将 this 绑定到实例上。当直接调用的时候,执行 call 方法,执行函数。...yield 是 ES6 的新关键字,类似于 return,用于返回一个迭代器(Iterator)对象,它有两个属性,value done,分别代表返回值是否完成迭代。...另外,如果函数很复杂,有许多行,或者函数内部有大量的读写操作,不单纯是为了计算值,这时也不应该使用箭头函数,而是要使用普通函数,这样可以提高代码可读性。

2K10

ES6相关概念及新增语法

小结 let关键字就是用来声明变量的 使用let关键字声明的变量具有块级作用域 在一个大括号中 使用let关键字声明的变量才具有块级作用域 var关键字是不具备这个特点的 防止循环变量变成全局变量...,可以省略大括号return function sum(num1, num2) {     return num1 + num2; } //es6写法 const sum = (num1..., num2) => num1 + num2; ​ 如果形参只有一个,可以省略小括号 function fn (v) {     return v; } //es6写法 const fn =...,那么这个箭头函数定义在fn里面,而这个fn指向是的obj对象,所以这个this也指向是obj对象     } } const resFn = fn.call(obj); resFn();...​ 小结 箭头函数中不绑定this,箭头函数中的this指向是它所定义的位置,可以简单理解成,定义箭头函数中的作用域的this指向谁,它就指向谁 箭头函数的优点在于解决了this执行环境所造成的一些问题

37110

TypeScriptJavaScript:需要了解的实用代码技巧

中,你可以通过在对象字面中提到变量,以速记的方式将一个属性分配给一个对象。...simpleInt; console.log(intAsBool); 简写法 箭头/Lambda函数表达式 JavaScript中的函数可以使用箭头函数语法编写,而不是传统的明确使用函数关键字的表达方式...箭头函数类似于其他语言中的lambda函数。 请看这个使用箭头函数表达式简写函数的例子。...; TypeScript简写法(指定变量类型) 使用箭头函数表达式的隐式返回 在JavaScript中,我们通常使用return关键字从一个函数中返回一个值。...当我们使用箭头函数语法定义我们的函数时,我们可以通过省略大括号{}隐式返回一个值。 对于多行语句,如表达式,我们可以用小括号()包裹我们的返回表达式。

3.8K92

JavaScript中的箭头函数

可以把所有内容放在一行,去掉大括号,并移除return关键字。 你已经在上面的示例中看到了这些漂亮的一行代码是如何工作的。...注意隐式返回错误 当你的JavaScript箭头函数包含不止一个语句,你需要在大括号内包裹所有语句,并使用return关键字。...正如你刚才注意到的,当你在一个箭头函数中使用大括号时,你不能省略return关键字。...从ES6开始,变量方法可以通过匿名函数的语法位置,使用name属性推断其名称。这使得在检查函数值或报告错误时有可能识别该函数。...这个推断的name属性仍然不能作为一个适当的标识符,你可以用它指代函数本身--比如递归、解除绑定事件等。 如何处理this关键字 关于箭头函数,最重要的一点是它们处理this关键字的方式。

2.1K20

ES6相关概念与ES6新增语法

小结 let关键字就是用来声明变量的 使用let关键字声明的变量具有块级作用域 在一个大括号中 使用let关键字声明的变量才具有块级作用域 var关键字是不具备这个特点的 防止循环变量变成全局变量...,可以省略大括号 function sum(num1, num2) { return num1 + num2; } //es6写法 const sum = (num1, num2)...=> num1 + num2; ​ 如果形参只有一个,可以省略小括号 function fn (v) { return v; } //es6写法 const fn = v => v;...(this);//this 指向 是obj对象 return () => { console.log(this);//this 指向 的是箭头函数定义的位置,那么这个箭头函数定义在...this,箭头函数中的this指向是它所定义的位置,可以简单理解成,定义箭头函数中的作用域的this指向谁,它就指向谁 箭头函数的优点在于解决了this执行环境所造成的一些问题。

42620

JavaScript 箭头函数不完全指北

(paramters){ //函数 } 从 ES6 开始,可以使用箭头函数声明匿名方法,如下 var example = p => { console.log(p); } 我们可以使用...,但是它们本质上完全不同 1.箭头函数不能显式地命名2.箭头函数不能用作构造函数,并且没有 prototype 属性,这意味着不能使用 new 关键字3.箭头函数会绑定到所在的词法作用域,不会改变 this...的指向 箭头函数不会创建新的作用域 在 JavaScirpt 中,在一个对象内部,this指向的是这个对象,而在普通函数内部,this指向的是window对象。...var double = (value) => { return value * 2 } 如果箭头函数只有一个参数,那么可以省略圆括号 var double = value =>{ return...value * 2 } 如果整个函数只有一行表达式,那么可以省略大括号 return(隐式返回) var double = value => value * 2 隐式返回对象字面量 需用()包裹

30520

「JS高级」ES6

小结 let关键字就是用来声明变量的 使用let关键字声明的变量具有块级作用域 在一个大括号中 使用let关键字声明的变量才具有块级作用域 var关键字是不具备这个特点的 防止循环变量变成全局变量 使用...,且代码的执行结果就是返回值,可以省略大括号 function sum(num1, num2) { return num1 + num2; } //es6写法 const sum...= (num1, num2) => num1 + num2; // 在箭头函数中如果函数中只有一句代码,并且代码的执行结果就是函数的返回值函数大括号可以省略,等于下面这样定义 // const...sum = (num1, num2) => { // return num1 + num2; // }; 如果形参只有一个,可以省略小括号 function fn (v) { return...(this); //this 指向 的是箭头函数定义的位置,那么这个箭头函数定义在fn里面,而这个fn指向是的obj对象,所以这个this也指向是obj对象 } } const resFn

1.7K10

ES6 箭头函数 Arrow Function

前言 ---- ES6 新增了一种新的函数: 箭头函数 Arrow Function 箭头函数相当于匿名函数简化函数定义,将原函数的 function 关键字函数名都删掉,并使用 => 连接参数函数...ES6 前定义函数 ---- // function 关键字 function add(num1, num2) { return num1 + num2; } // 函数表达式 const sub =...ES6 箭头函数语法 ---- 当没有参数时, 可以定义为以下形式 const test = () => { } 当只有一个参数时,括号可以省略。...(res); } 当有多个参数时,括号不能省略 const test = (num1, num2) => { return num1 + num2; } 当函数只有一行语句时,可以省略 {} const...ES6 箭头函数返回值 ---- 当方法体只有一条语句时可以省略花括号 // 普通写法 // const math = (num1, num2) => { // return num1 + num2 /

23710

JS箭头函数三连问:为何用、怎么用、何时用

在现代JS中最让人期待的特性就是关于箭头函数,用=>标识。箭头函数有两个主要的优点:其一是非常简明的语法,另外就是直观的作用域this的绑定。...什么才是箭头函数 JS的箭头函数大概就像python中的lambda(python定义匿名函数关键字)ruby中的blocks(类似于闭包)一样。...箭头函数的语法 箭头函数有一个大体的结构,同时也有很多的特殊情况可以简化。...这跟传统的函数很相像,只是我们省略了function关键字,并且添加了一个=>在参数后面。 并且,这里也有很多种情况,让箭头函数结构变得更加的简洁。...首先,如果函数里面是一个单独的表达式,你可以省略大括号直接将表达式写在一行,并且表达式的结果也将会被函数直接返回。

2.5K20

ES6箭头函数

箭头函数具有更短的语法形式,隐式绑定了this,并且没有自己的this、arguments、super 或 new.target。基本语法:箭头函数使用箭头(=>)分隔参数函数。...如果函数只有一条语句,可以省略大括号,并且该语句的结果将作为返回值。...由于函数只有一条语句,我们可以省略大括号并直接返回结果。参数括号:如果箭头函数只有一个参数,可以省略参数周围的括号。但是,当没有参数或有多个参数时,必须使用括号。...这种绑定是静态的,无法通过call()、apply() 或 bind() 改变。...注意事项:尽管箭头函数具有许多优点,但也有一些限制注意事项:箭头函数没有自己的this,因此无法用作构造函数箭头函数也没有自己的arguments对象,但可以通过使用剩余参数语法获取参数。

21040

ES6新增语法(二)——函数参数

箭头函数 箭头函数:将原来函数的function关键字函数名都删掉,并使用”=>”连接参数列表函数。...箭头函数语法: (参数1,参数2)=>{ 函数 } 注意点: 当参数有且只有一个,括号可以省略。没有参数或多个参数时,括号不能省略。 如果函数有且只有一个表达式时,可以省略花括号。...箭头函数使用实例: window.onload = ()=>{ console.log('网页加载完成') } 参数只有一个时,省略掉括号。函数只有一个表达式,花括号也省略。...箭头函数相当于匿名函数,并且简化函数定义,但箭头函数匿名函数有个明显的差异,箭头函数内部的this是词法作用域,上下文的this值作为自己的this值。...阅读代码的人可以看出哪些参数是可以省略的,不用查看函数或文档。 有利于代码的优化,即使未来版本拿掉这个参数,以前代码也可以运行,还有参数变量是默认声明的,不能在函数体内部再进行声明。

25910

ES6新增语法(二)——函数参数

箭头函数 箭头函数:将原来函数的function关键字函数名都删掉,并使用”=>”连接参数列表函数。...箭头函数语法: (参数1,参数2)=>{ 函数 } 注意点: 当参数有且只有一个,括号可以省略。没有参数或多个参数时,括号不能省略。 如果函数有且只有一个表达式时,可以省略花括号。...箭头函数使用实例: window.onload = ()=>{ console.log('网页加载完成') } 参数只有一个时,省略掉括号。函数只有一个表达式,花括号也省略。...箭头函数相当于匿名函数,并且简化函数定义,但箭头函数匿名函数有个明显的差异,箭头函数内部的this是词法作用域,上下文的this值作为自己的this值。...阅读代码的人可以看出哪些参数是可以省略的,不用查看函数或文档。 有利于代码的优化,即使未来版本拿掉这个参数,以前代码也可以运行,还有参数变量是默认声明的,不能在函数体内部再进行声明。

27020
领券