gpt4 book ai didi

javascript - 为什么javascript :alert ("foo" & "bar"); display zero?

转载 作者:行者123 更新时间:2023-11-30 06:58:09 24 4
gpt4 key购买 nike

我真的觉得标题解释得够透彻了。当我在一些字符串操作代码中使用 & 而不是加号时,我偶然发现了这个奇怪的地方。觉得很有趣。有人可以为我解释一下吗?

最佳答案

因为所有按位运算符1,包括按位与 (&),都使用 32 位整数。

此运算符将使用抽象 ToInt32 操作 2 将两个操作数转换为带符号的 32 位整数,如果值不是一个数字,此转换的结果是 0

最后你的表达式被评估为:

0 & 0; // 0

引用资料:

  1. 二进制位运算符 ECMA-262, 3rd. Ed. 11.10节

  2. ToInt32, ECMA-262 , 第 9.5 节

关于javascript - 为什么javascript :alert ("foo" & "bar"); display zero?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1905017/

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