Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有人能告诉我ecma-262中定义使用括号返回的标准吗? //创建一个名为MessageComponent的组件 var MessageComponent=React.createClass({ render:function(){ 返回( {this.props.message} ); } });_Javascript_Reactjs_Ecma - Fatal编程技术网

Javascript 有人能告诉我ecma-262中定义使用括号返回的标准吗? //创建一个名为MessageComponent的组件 var MessageComponent=React.createClass({ render:function(){ 返回( {this.props.message} ); } });

Javascript 有人能告诉我ecma-262中定义使用括号返回的标准吗? //创建一个名为MessageComponent的组件 var MessageComponent=React.createClass({ render:function(){ 返回( {this.props.message} ); } });,javascript,reactjs,ecma,Javascript,Reactjs,Ecma,请注意,为什么我们需要在return语句(第行)周围加上括号 3)? 这是因为JavaScript自动插入分号。 如果没有括号,JavaScript将忽略以下几行 并且返回时不带值。如果JSX与 返回,则不需要括号 摘自。规范中没有处理使用paren返回的特定部分。括号只是创建表达式的一种方法 当遇到continue、break、return或throw标记时 在下一个标记之前遇到LineTerminator,将使用分号 在继续、中断、返回或抛出后自动插入 代币 看起来这里的括号只是用括号括起

请注意,为什么我们需要在return语句(第行)周围加上括号 3)? 这是因为JavaScript自动插入分号。 如果没有括号,JavaScript将忽略以下几行 并且返回时不带值。如果JSX与 返回,则不需要括号


摘自。

规范中没有处理使用paren返回的特定部分。括号只是创建表达式的一种方法

当遇到continue、break、return或throw标记时 在下一个标记之前遇到LineTerminator,将使用分号 在继续、中断、返回或抛出后自动插入 代币

看起来这里的括号只是用括号括起来的普通JS表达式,即返回(1+2),除了多行:

// Create a component named MessageComponent
var MessageComponent = React.createClass({
  render: function() {
    return (
      <div>{this.props.message}</div>
    );
  }
});

*编辑为不使用closure一词。

FYI,这不是简单的Javascript,因此不是ECMA-262完全定义了该格式。reactjs正在处理该返回语句。如果查看编译后生成的原始js。。。他们仍然使用括号。如果这是一个关于Javascript标准的JS问题,那么发布实际的JS,而不是JSX。JS语法的答案是paren只是定义多行语句的一种方法。。。。我不喜欢用谷歌搜索3秒作为答案,提问者应该在提问前搜索……这里有一个很好的答案:在这里使用这个词可能会有点误导。
function x() {
    return (
        1 + 2
    );
}