【发布时间】:2013-04-20 08:10:35
【问题描述】:
我的 javascript 中有这个:
console.log(filters);
console.log('----');
console.log(filters.max_price);
在 Chrome 中,它显示了这一点。这是预期的行为。
Object {max_price: undefined, sort_by: undefined, distance: undefined, start: undefined, num: undefined}
----
undefined
在 IE8 中,日志显示如下:
LOG: Object Object
----
LOG: String
为什么 IE8 认为它是一个字符串?我需要知道它是否未定义。
我有很多设置默认值的代码。
if(typeof filters.max_price == undefined){ //I use this technique a lot!
filter.max_price = 2000;
}
如何在 IE8 中检查 undefine-ds?我应该这样做吗?这似乎行得通(耶...),但它看起来既便宜又老套。
if(!filters.max_price || typeof filters.max_price == 'undefined'){
有没有一种简单的方法可以用下划线做到这一点?
【问题讨论】:
-
您的意思是
undefined是“已声明但未定义”,还是undefined是“未声明或定义”;两种不同的东西...... -
@jurgemaister 是的,我知道......但这与问题无关
-
IE8 的
console并不是那么好。在以后的IE版本中会更好,但是如果您需要在IE8中工作,您可以尝试使用Firebug Lite来代替。它将为您提供更多功能来检查您的 JS 数据等。
标签: javascript jquery object internet-explorer-8