相关疑难解决方法(0)

如何在ES2015中编写命名箭头功能?

我有一个函数,我试图转换为ES6中的新箭头语法.它是一个命名函数:

function sayHello(name) {
    console.log(name + ' says hello');
}
Run Code Online (Sandbox Code Playgroud)

有没有办法给它一个没有var语句的名字:

var sayHello = (name) => {
    console.log(name + ' says hello');
}
Run Code Online (Sandbox Code Playgroud)

显然,我只能在定义之后使用此功能.如下:

sayHello = (name) => {
        console.log(name + ' says hello');
    }
Run Code Online (Sandbox Code Playgroud)

ES6中有新的方法吗?

javascript ecmascript-6 arrow-functions

192
推荐指数
3
解决办法
7万
查看次数

在Javascript中声明函数的最有效方法是什么?

我一直都知道要在javascript中声明一个函数你应该做的事情如下:

function myfunction(fruit){
    alert('I like ' + fruit + '!');
}
Run Code Online (Sandbox Code Playgroud)

或类似的东西:

var myfunction = function(fruit){
    alert('I like ' + fruit + '!');
};
Run Code Online (Sandbox Code Playgroud)

但是,最近,我注意到有些人实际上将函数定义为常量:

const myfunction = fruit=> alert('I like ' + fruit + '!');
Run Code Online (Sandbox Code Playgroud)

甚至使用关键字let:

let myfunction = fruit=> alert('I like ' + fruit + '!');
Run Code Online (Sandbox Code Playgroud)

此时我很困惑.

  • 为什么有这么多定义函数的方法?
  • 何时/何地我应该使用每一个?
  • 哪种方式更有效?

javascript function

10
推荐指数
1
解决办法
677
查看次数