0
我有一段我在标签中写的代码。x的价值是什么?
<script>
var y = 1,
x = y = typeof x;
alert(x);
</script>
这将提醒x为“未定义”。
请解释一下Javascript编译器如何评估它。
在此先感谢。
我有一段我在标签中写的代码。x的价值是什么?
<script>
var y = 1,
x = y = typeof x;
alert(x);
</script>
这将提醒x为“未定义”。
请解释一下Javascript编译器如何评估它。
在此先感谢。
从右到左。在定义之前,x的类型是不确定的,这并不奇怪。
如果你在你的警报X,这将是不确定的为好,因为你已经把它的类型的X
由于x
尚未确定它会返回“未定义”在同一个地方的警报ÿ ,然后将其分配给y
,然后将值y
(现在未定义)分配给x
。
评估发生从右到左。因此,首先'typeof(x)'计算并返回'undefined'到'y',然后将其赋值给'x' –
'var x,y; y = 1; y = typeof x; x = y; alert(x);' – Rayon
感谢您的评论 –