其他分享
首页 > 其他分享> > JS犀牛书学习笔记——第三章 类型、值和变量

JS犀牛书学习笔记——第三章 类型、值和变量

作者:互联网

第三章 类型、值和变量

数据类型分为原始数据类型(数字、字符串和布尔值)和对象数据类型;

特殊原始值:null和undefined;

数字

JavaScript支持复杂的算术运算,通过作为Math对象的属性定义的函数和常量;

算术运算在溢出(±Infinity)、下溢(0)或被零整除的时候不会报错;

NaN非数字值,他和任何值都相等,包括自身;

二进制浮点数和四舍五入错误;

用大整数进行重要的金融计算

字符串直接量

当js代码和HTML代码混杂在一起的时候,最好在js和HTML代码中各自使用独立的引号风格

ES3字符串直接量必须写在一行,ES5字符串直接量可拆分成数行,每行必须以反斜线结束;

字符串提供了许多可以调用的方法;

ES5中,字符串可以当作只读数据,除了charAt(),还可以用方括号来访问字符串的单个字符;

布尔值

任意js的值都可以转换为布尔值,undefined,null,0,-0,NaN,空字符串都会被转换成false,其他所有值,包括所有对象(数组)都会被转换成true;

null和undefined

都表示值的空缺,要使用严格相等运算符“===”来区分它们;

全局对象

当js启动器启动时(或者任何Web浏览器加载新页面的时候),他将创建一个新的全局对象,比给他一组定义的初始属性;

包装对象

js对象是一种复合值,他是属性或已命名值的集合;

存取字符串、数字或布尔值的属性时创建的临时对象称作包装对象;

不可变的原始值和可变的对象引用

原始值的比较是值的比较;

对象的比较并非值的比较(两个对象包含同样的属性及相同的值,但他们也是不等的),对象也称为引用类型,对象值都是引用;

对象的比较均是引用的比较,想比较两个单独的对象或数组,则必须比较它们的属性或元素;

类型转换

js运算符和语句期望使用多样化的数据类型,并可以相互转化;

类型转换表p49;

显式类型转换:toFixed() toExponential() toPrecision() Number() parseInt() parseFloat()

对象转换为原始值:toString() valueOf()

函数作用和声明提前:

函数作用域是指在函数内声明的所有变量在函数体内始终是可见的;

由于函数作用域的特性,局部变量在整个函数体始终是有定义的,函数体内局部变量遮盖了同名全局变量,只有在执行赋值语句时才会被真正赋值;

标签:第三章,函数,对象,js,布尔值,字符串,犀牛,JS,属性
来源: https://www.cnblogs.com/masahiko/p/15852472.html