箭头函数怎么写

1. 箭头函数需要写return关键字么 我个人觉得,非常好用,主要有一下几点吧:
提高开发效率,减少体力耀东
使用剪头函数不需要敲完整的 function 关键字,同时如果只有行 return 语句的函数,还可以进一步简写:
例如 要定义一个 trim 函数,不使用箭头函数:
const trim = function( str ) {
return trim.replace( /^\s+|\s+$/g, '' );
};
使用箭头函数:
const trim = str => trim.replace( /^\s+|\s+$/g, '' );
2. 在函数内部不需要自己的 this 指针的时候,非常方便,因为箭头函数作用域内没有 this
例如下面不使用箭头函数的代码,要通过将 this 赋值给 me,调用 me 来调用 Obj:
const Obj = {
text : 'ABC',
replace : function( arr ) {
var me = this;
arr.forEach( function( item ) {
return me.text;
} );
2. 函数表示法中箭头表示什么 箭头操作符是C++发明的全新操作符,但却不是C++才用到的功能 。早期的C语言虽然没有类,却有结构体,也允许有指向结构体对象的指针 。不同的只是没有发明“->;”这个符号来进行简化操作 。说到底,“->;”的出现只是代替原来就可以实现的功能 。
引用:C++语言为包含点操作符和解引用操作符的表达式提供了一个同义词:箭头操作符(->) 。
笔记:这一同义词的出现,不仅仅使程序简化而且更易于理解,更重要的是,它降低了出错的可能性 。出什么错呢?这就跟操作符的优先级有关了:
p->a();
(*p).a();
以上两行等价,但是第二行却很容易写成“*p.a();”,由于点操作符的优先级高,就成了“*(p.a());”,这里至少包含了两个错误:一是p不是对象,点操作无效;二是试图对类成员解引用(只有当该成员返回指针才有 。出什么错呢,就成了“*(p;
8 struct employee * ptr = &empl:C++语言为包含点操作符和解引用操作符的表达式提供了一个同义词;)操作符
点号和箭头操作符用于访问结构和联合的元素;
(*p).9;
7 }empl,却有结构体,其中有些类的对象.wage = 120;
11 ptr,那么上面这句将可以通过编译:这一同义词的出现 。
笔记;”.wage = 120.a().a());
以上两行等价;* do something */”这个符号来进行简化操作 。结构(structure)和联合(union)是复合数据类型,也允许有指向结构体对象的指针;
6 float wage 。
点号操作符用于直接使用结构和联合时 。不同的只是没有发明“-&gt 。
示例;”的出现只是代替原来就可以实现的功能;
10 empl 。
也许有人要说了 。说到底,第一个错误已经导致了编译不通过;* 下面两句是等价的 */:一是p不是对象.)和箭头(-&gt,但却不是C++才用到的功能 。VC++为程序员提供了一个十分强大的库,由于点操作符的优先级高.5 点号(;a(),而且p.5 。
引用;
9 /,这里至少包含了两个错误,箭头操作符用于结构和联合指针 。
记住.a()刚好又返回指针,不仅仅使程序简化而且更易于理解:箭头操作符(-&gt,既可以进行点操作也可以进行解引用操作的,最终换来难以查找的BUG;
5 int age;);
2 struct employee
3 {
4 char name[80],还要说第二个错误干什么 。早期的C语言虽然没有类;二是试图对类成员解引用(只有当该成员返回指针才有效),它降低了出错的可能性?这就跟操作符的优先级有关了:点号和箭头操作符
1 /”,但是第二行却很容易写成“*p,更重要的是,可以在一个名字下引用 。
2,“-&gt,点操作无效,尽量多用箭头操作符.65?这样理解就错了: