javascript - 关于在if条件句中判断一个值是否存在
本文介绍了javascript - 关于在if条件句中判断一个值是否存在的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
一直有一个虽然基础但是理解不深的问题,if(!a){...代码块一...},为什么a值不存在不实执行代码块一,而是报错。 这样的话undefined不就只适合有定义但是没有赋值的变量了吗 ?
我做过这样一个小测试,var a;if(!a.b){...代码块一...}会报错; 而var a="x";if(!a.b){...代码块一...}会执行代码块一。 这个说明,如果a是一个object,那么就可以访问它的属性,即使它不存在。
解决方案
这其实是设计不合理的问题',不必太过纠结。使用严格模式就可以得到一个统一的解释:未声明的变量不够直接使用。可以避免很多歧义。
这篇关于javascript - 关于在if条件句中判断一个值是否存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文