44个 Javascript 变态题解析 (下)

607 查看

承接上篇 44个 Javascript 变态题解析 (上)

第23题

这个题也还可以.

这个题会让人误以为是 2 > 1 && 2 < 3 其实不是的.

这个题等价于

答案是 [true, true]

第24题

这个题我是猜的. 我猜的 true, 至于为什么…..

both objects get converted to strings and in both cases the resulting string is "2" 我不能信服…

第25题

这个题也挺逗, 我做对了 :) 答案是 error, '3', error

你如果换一个写法就更费解了

这个答案就是 '3';

为啥呢?

因为在 js 中 1.1, 1., .1 都是合法的数字. 那么在解析 3.toString 的时候这个 . 到底是属于这个数字还是函数调用呢? 只能是数字, 因为3.合法啊!

第26题

答案是 1, error

y 被赋值到全局. x 是局部变量. 所以打印 x 的时候会报 ReferenceError

第27题

即使正则的字面量一致, 他们也不相等.

答案 false, false

第28题

字面量相等的数组也不相等.

数组在比较大小的时候按照字典序比较

答案 false, false, false, true

第29题

这个题也还可以.

这个题会让人误以为是 2 > 1 && 2 < 3 其实不是的.

这个题等价于

答案是 [true, true]

第24题

这个题我是猜的. 我猜的 true, 至于为什么…..

both objects get converted to strings and in both cases the resulting string is "2" 我不能信服…

第25题

这个题也挺逗, 我做对了 :) 答案是 error, '3', error

你如果换一个写法就更费解了

这个答案就是 '3';

为啥呢?

因为在 js 中 1.1, 1., .1 都是合法的数字. 那么在解析 3.toString 的时候这个 . 到底是属于这个数字还是函数调用呢? 只能是数字, 因为3.合法啊!

第26题

答案是 1, error

y 被赋值到全局. x 是局部变量. 所以打印 x 的时候会报 ReferenceError

第27题

即使正则的字面量一致, 他们也不相等.

答案 false, false

第28题

字面量相等的数组也不相等.

数组在比较大小的时候按照字典序比较

答案 false, false, false, true

第29题