1、JavaScript高级程序设计中第48页
“如果有一个操作数是对象、数值或布尔值,则调用它们的toString()方法取得相应的字符串值,然后再应用前面关于字符串的规则”
function test(){
var a=true;
alert(10+a)
}
test()
如果按照书上讲的运行出来的结果应该是10true
但实际上运行结果是11
2、
function rewrite(num1,num2){
arguments[1]=100;
alert(arguments[0]+num2)
alert(num2)
alert(arguments[1])
}
rewrite(10)
(1)这里的arguments[1]与num2的值不一致,书上说是因为arguments对象的长度由传入参数个数决定(P66)。我不懂这两者有什么关联?
(2)alert(arguments[0]+num2)为什么输出是NaN,而不是10undefined,书上说的是“对于undefined和null,则分别调用String()函数并取得字符串‘undefined’和‘null’”(P48)
以上的书页都是指JavaScript高级程序设计
相关分类