讲师回答 / Bosn
声明前置处理,但赋值不会。也就是说,var o = 1;这里的var o;被前置处理。而o = 1// 赋值,是在后面的代码执行阶段做的,所以alert写在前后当然有差别。
2015-04-04
已采纳回答 / Bosn
................................................相等判断一个变量是不是window(浏览器前端编程),比如变量val,那么就用val === window判断即可。
2015-04-02
已采纳回答 / Bosn
一个完整的语句,如果以{开头,就会被理解为block(块)也就是说:{} + []直接这样写,等于被拆分为:{} // 这是空块被忽略+[] // 这是最后返回的值因此直接在控制台输入返回的是+[](空数组转数字)也就是0.而如果换种写法:var n = {} + []; // 此时 {} 不再是块,而是空对象字面量。这时会尝试转字符串,即[object Object],而空数组转换为字符串就是空串,所以最终返回[object Object].
2015-03-28