使用此Javascript代码在幕后发生了什么?

时间:2015-11-10 16:53:01

标签: javascript ecmascript-6

(()=>{
console.log("Hello, world");
})();

这个功能如何运作?它似乎非常模糊,我想要了解真正发生的事情。

3 个答案:

答案 0 :(得分:3)

表达式,

() => {
console.log("Hello, world");
}

创建一个Arrow function,在ECMAScript 2015标准中引入,并在最后使用函数调用表达式()立即执行。

此外,箭头函数定义实际上只是函数表达式。因此,您可以省略周围的parens并将其写为

() => {
  console.log("Hello, world");
}();

除此之外,箭头函数中只有一个表达式。因此,您不需要创建块并将其写为

(() => console.log("Hello, world"))();

答案 1 :(得分:3)

这是ECMAScript 6.它使用=>(称为“箭头”或“胖箭头”)运算符创建一个匿名函数。该函数在执行时执行console.log("Hello, world");。您发布的代码然后执行该功能(尾随();)。

它像这样崩溃:

( // wrapper for the function definition
    ()=>{ // use => to create an anonymous function
        console.log("Hello, world"); // body of the function
    } // end of the function definition
) // end of the wrapper for the function definition
(); // executes the function.

您可以在this prior answer that I postedthe Mozilla documentation中了解有关箭头功能的更多信息。

答案 2 :(得分:1)

它向Web控制台输出一条消息。 Here是指向包含完整API的网页的链接。