分享更有价值
被信任是一种快乐

JavaScript中null实例代码分析

文章页正文上

这篇“JavaScript中null实例代码分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“JavaScript中null实例代码分析”文章吧。JavaScript 有两种类型:原始类型(strings, booleans, numbers, symbols)和对象对象是一个复杂的数据结构。最简单的 JavaScript 对象是普通对象 —— 键和相关值的集合但是很多情况下不能创建一个对象。在这种情况下,JavaScript 提供了一个特殊的值 null —— 表示缺少对象在这篇文章中,你将学习关于 JavaScript 中的 null 的一切: 它的含义,如何检测它,nullundefined 之间的区别,以及为什么大量使用 null 会造成代码维护困难等JavaScript 规范中这么描述 nullnull 是一种原始类型,表示有意不包含任何对象值如果您看到 null(分配给变量或由函数返回),那么在那个位置原本应该是一个对象,但由于某种原因,一个对象没有创建比如,函数 greetObject() 创建对象,但也可以在无法创建对象时返回 null:当上面的函数中传入一个字符串参数时,如预期的,函数返回一个对象 { message: 'Hello, Eric!' }但是,函数中不传任何参数时,该函数返回 null。返回 null 是合理的,因为 who 参数没有值,导致 greeting 对象无法创建考虑关于 null 的一个比较贴切的比喻,你可以把变量想象成一个盒子。就像变量可以容纳对象一样,盒子也可以容纳像茶壶等的物品但一旦你收到一个盒子,打开它,什么也没有!有人弄错了,给了你一个空盒子。该盒子不包含任何内容,或者换句话说,它包含一个 null 值检查 null 好方法是使用严格相等运算符missingObject === null 的结果为 true,因为 missingObject 变量包含一个 null 值。如果变量包含非空值,比如对象,则表达式 existingObject === null 的结果为 falsenullfalse、0、”、undefinedNaN 都是假值。如果在条件语句中遇到它们,那么 JavaScript 将把它们强制为 falsetypeof value 类型操作符可以确定值的类型。例如,类型为 15 的是 numbertypeof { prop: 'Value' } 等于 object。有趣的是,null 值类型的结果是什么typeof null; // => ‘object’一个缺失的对象类型怎么被判断为 object? 原来 typoef null 作为 object 是早期 JavaScript 实现中的一个错误不要使用 typeof 操作符检测 null 值。如前所述,使用严格的相等运算符 myVar === null如果你想使用 typeof 去检查一个变量是否是一个对象,你必须排除掉 null 的情况null 通常会在你希望使用对象的情况下意外出现。然后,如果尝试从 null 中提取属性,JavaScript 会抛出一个错误让我们再次使用 greetObject() 函数并尝试从返回的对象中访问 message 属性因为 who 变量是一个空字符串,所以函数返回 null。当从 null 访问 message 属性时,将抛出类型错误错误你可以通过使用 可选链操作符 来处理 null或者使用下一节中描述的两种选择。当你不能构造一个对象时,很容易返回 null。但这种做法也有缺点一旦 null 出现在执行堆栈中,你总是必须检查它我们尽量避免返回 null:返回默认对象而不是 null抛出错误而不是返回 null让我们回忆一下 greetObject() 函数返回 greeting 对象当缺少参数时,可以返回一个默认对象,而不是返回 null或者抛出一个错误这些实践可以让你完全避免处理 nullundefined 就是未初始化的变量或对象属性的值例如,如果在声明变量时没有赋初值,那么访问该变量免费云主机、域名的结果为 undefinednullundefined 之间的主要区别是,null 表示丢失了的对象,而 undefined 表示未初始化的状态严格相等运算符 === 区分 nullundefined而松散相等运算符 == 则认为 nullundefined 相等我使用松散相等运算符检查变量是否为 nullundefinednullJavaScript 中的一个特殊值,表示丢失的对象严格相等运算符判断变量是否为空: variable === nulltypoef 操作符用于确定变量的类型(number, string, boolean)。但是,typeofnull 情况下会引起误解: typeof null 结果为 objectnullundefined 在某种程度上是等价的,但null 表示一个丢失的对象,而 undefined 表示未初始化状态尽可能避免返回 null 或将变量设置为 null。因为这种做法会导致 null 值的扩展和需要对 null 的验证。相反,尝试使用具有默认属性的对象,或者甚至抛出错误会是更好的实践。以上就是关于“JavaScript中null实例代码分析”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注云技术行业资讯频道。

相关推荐: react数组变化不更新如何解决

本文小编为大家详细介绍“react数组变化不更新如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“react数组变化不更新如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 react数组变化不更新是因为在js中数组的赋值…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册