Head First JavaScript学习笔记
Posted andy连长
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Head First JavaScript学习笔记相关的知识,希望对你有一定的参考价值。
-
类型、相等、转换等
undefined数据类型:
正如你看到的,在任何不确定的情况下——使用未初始化的变量、访问不存在(或已删除)的属性、使用不存在的数组元素时——你都将遭遇undefined。
undefined到底是什么?它其实并不复杂。你可以这么认为:对于任何还没有值(即还未初始化)的东西,都会将undefined赋给它。这样做有什么好处呢? undefined让你能够判断是否给变量(属性或数组元素)赋值了。
如何使用null:
很多函数和方法都返回对象,你需要确认获得的是货真价实的对象而不是null,以防函数无法找到或创建要返回的对象。
别忘了,null用于表示对象不存在。
不是数字的数字NaN:
javascript使用NaN[ 通常被称为非数字(Not a Number)] 来表示它无法表示的数值结果。 就拿0/0来说吧, 在计算机中无法表示其结果, 因此JavaScript使用NaN来表示它。
NaN可能是世上最怪异的值。 它不仅用于表示所 有 无 法 表 示 的 数 值 ,还是JavaScript中唯一一个与自己不相等的值!
处理NaN:
需要使用特殊函数isNaN,
理解相等运算符 ==:
如果两个值的类型相同,就直接进行比较
如果要比较的两个值的类型相同,如比较两个数字或两个字符串,将按你期望的方式进行比较:将这两个值进行比较,如果它们相同,结果为true。非常简单。
如果两个值的类型不同,则尝试将它们转换为相同的类型,再进行比较
这种情况更有趣。假设你要对两个类型不同的值进行比较,如一个数字和一个字符串, JavaScript将把字符串转换为数字,再进行比较
相等运算符如何转换操作数:
情形1: 比较数字和字符串
情形2: 比较布尔值和其他类型
情形3: 比较null和undefined
情形4: 其实只有三种情形。
严格相等 ===:
当且仅当两个值的类型和值都相同时,它们才是严格相等的
如何判断两个对象是否相等:
检查两个对象变量是否相等时,比较的是指向对象的引用
仅当两个引用指向的是同一个对象时,它们才相等
JavaScript将哪些值视为假值:
以上是关于Head First JavaScript学习笔记的主要内容,如果未能解决你的问题,请参考以下文章