js判断变量是否为undefined

js判断变量是否为undefined,第1张

undefined是js中的一特殊的变量

1、在变量提升(预解析)阶段,只声明未定义,默认值就是undefined。

2、在JS的严格模式下(”usestrict”),没有明确的主体,this指的就是undefined。

3、函数定义没有返回值(return或者return后面什么也不带),默认的返回值就是undefined。

4、函数定义形参不传值,默认就是undefined。

5、对象没有这个属性名,属性值默认就是undefined。

6、在数组的find方法中,没有找到的情况下是undefined。

扩展资料

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

参考资料:百度百科-javascript

访问对象属性首先从自身找,然后从原型链上找,找到则返回,没找到返回undefined.

// 构造函数

function Foo(name) {

    this.name = name

}

var foo = new Foo('Tom') // 实例对象

console.log(foo.name) // Tom 自身找到直接返回

console.log(foo.toString()) 

/**

 * 自身没有 toString 方法,从隐式原型链上找 foo.__proto__ = Foo.prototype => Foo.prototype.__proto__ = Object.prototype

 */

undefined的英文意思就是【未定义】,不存在的变量也就是未定义的变量。

a.phone == undefined 这行代码是否为 true 得看什么情况。

如过 a 没有声明赋值(也就是未定义), 那么这行代码会直接报错(Cannot read property 'phone' of undefined)。

如果 a 声明赋值了,同时 a.phone 也声明赋值了,那么这行代码为 false。

如果 a 声明赋值了,但是 a.phone 没有声明赋值,那么这行代码为 true。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11722588.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存