gpt4 book ai didi

Javascript 运算符优先级技术细节

转载 作者:数据小太阳 更新时间:2023-10-29 04:49:24 24 4
gpt4 key购买 nike

我很难理解 Javascript 优先级第 14 组中求幂和其他所有内容(乘法、除法等)的组合的含义。

Source - MDN

三个问题:

  1. 将从右到左和从左到右的结合性组合在一个组中是什么意思?
  2. 如何根据这些规则改写表达式 2 ** 3 * 4,并仍然得到相同的答案? 4 * 2 ** 3 有效...这是什么意思?
  3. 这何时/如何不等同于给予指数更高优先级的看似简单的权宜之计?

最佳答案

1) 2 ** 3 ** 4,从右到左结合,是2 ** (3 ** 4)2/3/4,从左到右结合,是 (2/3)/4

2/3) 我相信 2 ** 3 * 4(2 ** 3) * 42 * 3 ** 42 * (3 ** 4)(由 es6fiddle 计算)。

这不是从表中得出的;但取幂应优先于乘法。在一个优先级中混合从左到右和从右到左是很奇怪的。事实上,据我在 ES7 drafts 中所见, 它在语法上与 */% 完全不同,而是作为一元运算 (!)。

另请注意,目前除了 Babel 和 Traceur 之外,没有其他引擎支持 **,因此目前主要是学术性的。 MDN 是一个 wiki,求幂运算符是 Mozillian 添加的;但 AFAIK 因为 Mozilla 目前不支持 **,所以它实际上并没有记录 Mozilla 解释语言的方式。

关于Javascript 运算符优先级技术细节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32983652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com