在 javascript 中,undefined 是一个全局变量,代表未赋值的变量或属性。它是一个原始值,类型为 undefined,与 null 不同,后者是一个显式赋值的空值。undefined 可用于检查变量是否赋值、初始化变量和用于函数参数默认值。
JavaScript 中的 undefined
什么是 undefined?
在 JavaScript 中,undefined 是一个全局变量,代表一个未赋值的变量或尚未声明的属性。
undefined 的特点
- 它是一个原始值(primitive value),类型为 undefined。
- 它不能被赋值。
- 它与 null 不同,null 是一个显式赋值的空值,而 undefined 是默认赋值。
undefined 的用法
- 检查变量是否已赋值:使用 typeof 操作符来检查变量的类型,如果类型为 undefined,则变量未赋值。
- 初始化变量:可以将变量初始化为 undefined,表示尚未赋值。
- 用于函数参数:当函数没有传递任何参数时,它的参数默认值是 undefined。
undefined 与 null 的区别
- null 是一个显式赋值的空值,表示该值不存在。
- undefined 是一个未赋值的变量,表示变量还没有值。
- 严格相等(===)比较时,undefined 与 null 不相等。
示例
// 未赋值的变量 let myVariable; // 检查变量是否已赋值 if (typeof myVariable === "undefined") { // 变量未赋值 } // 初始化变量为 undefined const myObject = { name: "John", age: undefined, }; // 函数参数默认值为 undefined function myFunction(name, age) { if (age === undefined) { // age 参数未传递 } }