js中undefined的使用

一、js中导致undefined的几种情况:

1、变量声明过但没有赋值;
2、获取对象中不存在的属性时;
3、函数需要实参,但是调用时没有传参,形参是undefined;
4、函数调用没有返回值或者return后没有数据,接受函数返回的变量是undefined

二、应用

以前在判断undefined的时候,我会直接这样使用:

let nothing;
if (nothing == undefined) {
 // ...
}

而比较规范的写法应该是

let nothing;
if (typeof nothing === 'undefined') {
 // ...
}

三、如何避免错误

1、使用let、const,弃用var
2、访问不存在的属性时不会出错,而从不存在的属性值获取数据时才出现真正的问题。所以取用时要先判断是否存在。

  • 如何检查属性是否存在
    (1) obj.prop !== undefined :直接与undefined进行比较
    (2) typeof obj.prop !== ’undefined':验证属性值类型
    (3) obj.hasOwnproperty('prop'): 验证对象是否具有自己的属性
    (4) ‘prop' in obj:验证对象是否具有自己的属性或继承属性
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容