为什么全局变量调试得到评估为[对象对象]而不是1?考虑以下代码:为什么全局变量调试得到评估[对象对象]
var debug = 1;
function hum(mess) {
alert('hum alert debug == ' + debug);
console.log('hum console.log debug == ' + debug);
if (debug == 1) {
console.error('hum mess == ' + mess);
} else {
console.error('hum debug != 1 mess == ' + mess);
}
}
当我的代码,所以我警觉说:“调试== 1”,但后来(的PhoneGap加载完毕后也许)它开始给我调试== [对象的对象首先运行EVAL正确作出]。我正在开发使用iPhone手机使用Xcode和iPhone模拟器。
感谢
由于字符串转换工作的方式。基本上js类型是一个小姐。也警觉是愚蠢的,停止使用它。 – Raynos
可能是您的代码和正在使用的库之间的冲突?他们也可以使用名为debug的变量,但将其设置为对象。 – DoctorMick
它看起来像'debug'正在被一些其他代码所取代。使用'DEBUG'并查看是否仍然发生相同的事情。 – Tomalak