首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ES 6复合报表持有人

ES 6复合报表持有人
EN

Stack Overflow用户
提问于 2016-02-02 00:27:58
回答 2查看 56关注 0票数 0

我不确定这在ES5中是否已经可行,如果没有,ES6中是否有任何更改;是否有任何方法将复合语句分配给thing

这将有助于它可以在JavaScript期望的单一语句的任何地方使用。

像这样:

代码语言:javascript
复制
var leftValue = {
    x = Math.PI;
    cx = Math.cos(x);
    alert("cos(" + x + ") = " + cx);
}
//it wouldn't work
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-02-02 00:44:18

是的,您可以在js中定义复合语句,但它们不能返回值,因此不能将它们赋值给变量,也不能像传递函数一样传递它们。

它们的唯一用例是有可能像循环(或类似于函数中的return; )那样中断它们,或者从ES6到这个块的变量范围。

代码语言:javascript
复制
leftValue: {
    let x = Math.random();  //block scope
    var cx = Math.cos(x*Math.PI);  //function scope
    if(x < .5) break leftValue;
    console.log('inside', x, cx);
}

try {
    console.log('outside', x , cx);
}catch(err){
    console.log('catched', err, cx);
}
票数 1
EN

Stack Overflow用户

发布于 2016-02-02 00:32:52

我不确定我是否理解这个问题,但我想我理解。您的意思是对这些语句进行分组,这样您就可以按照顺序执行它们,而不必每次重复它们了吗?那只是个功能。

代码语言:javascript
复制
var leftValue = function ( ) {
    var x = Math.PI;
    var cx = Math.cos(x);
    alert("cos(" + x + ") = " + cx);
};

// Execute those three statements
leftValue();
// Execute them all again
leftValue();
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35142990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档