_=>{
console.log(_)
}
最近看到一个ES6的函数简写,大概理解什么意思,但希望大大们详细说下_的作用
你可以安装一个Scratch JS的chrome插件,实时编译ES6,它给出的ES5是
"use strict";
(function(_){
console.log(_);
})
_
只是一个参数名,可以取任意有效的参数名,一般会取有实际含义的参数名
下划线是构成变量的一种方式
一般来说加下划线的变量为私有变量,这是常规都比较遵守的一种代码规范。
_就带表的是一个变量的名字
也就是function _(){ console.log(_)} 是这个意思
说到底就是太懒了,偷懒的写法
按照 es6 的写法是
// 如果没有参数必须写括号
() => {...}
// 所以就偷懒,造一个没用的参数
_ => {...}
// 果然比()少写一个字符呢
这个写法呢,我最早是看到 TJ 的某个代码里面就是这样偷懒写的,于是我以后也就这样偷懒写了。
这是function() 的简写,但这个简写和 function并不完全一样
它不带 this 也不带 prototype 属性,用new新建会报错
所以并不能完全替代 function的写法
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
ES6允许使用“箭头”(=>)定义函数。
上面的箭头函数等同于:
如果箭头函数不需要参数或需要多个参数,就使用一个圆括号代表参数部分。