在示例typeof(3 + 4)中;返回数字。 然后是示例typeof(3 + 4)+1;返回数字1。
因此,与其将其加到7而不是将+ 1视为字符串,而是说它是一个数字?
我觉得这很混乱。有人可以启发我吗?
答案 0 :(得分:1)
在第二种情况下,+
充当字符串连接。因此typeof (3 + 4)
给出了号码&+
的联系电话&1,这就是为什么它是number1
答案 1 :(得分:1)
typeof (3 + 4);
返回"number"
,一个字符串,在字符串中添加数字只会在其后面附加数字,这意味着
typeof (3 + 4) + 1;
本质上是"number" + 1
,即"number1"
是的,typeof 1 + (3 + 4);
将3和4之和加到typeof 1
,然后返回"number7"
答案 2 :(得分:1)
typeof
运算符返回一个字符串,指示未评估的操作数的类型。语法
typeof
运算符后跟其操作数:
typeof
UnaryExpression参数
operand
是表示要返回其类型的对象或基元的表达式。括号是可选的。
在第一种情况下[ typeof(3 + 4)] : 3 + 4 = 7 ,这是数字类型,因此输出为 Number
在第二种情况下[类型为(3 + 4)+1] : 3 + 4 = 7 ,这是数字类型,因此 Number + 1 (只是字符串连接)给出的输出为 Number1
console.log(typeof (3 + 4));
console.log(typeof (3 + 4)+1);