JS基本类型和变量

严格模式

ECMAScripr5引入了严格模式。启用严格模式可以在顶部添加:

“use strict”

严格模式下,JS执行结果不同。


ES是弱类型语言,使用var操作符,后跟变量名,可以定义任何类型的变量。同时,可以在修改变量值的同时修改值的类型。在函数中,使用var定义一个变量,这个变量在函数退出后就会被销毁。省略var变量,则会变成全局变量。

数据类型

简单数据类型

  • Undefined。变量未初始化的值,唯一。可以用typeof操作符检测,尽管有时候typeof操作符不会返回期待的值。
  • Null。唯一,相当于一个空对象指针,使用typeof操作符检测null值时会返回“object”。null和undefined在相等操作符时会返回true。
  • Boolean。true和false。区分大小写。转换可以使用Boolean()。
  • Number。在js中支持整数和浮点数值,可以存在十进制、二进制、八进制、十六进制。
    • 浮点数值精度存在问题,例如0.1+0.2的结果并不是0.3。
    • NaN,表示Not a Number。
    • 数值转换。Number()、parseInt()、parseFloat()。第一个函数可以用于任何类型,第二个和第三个函数仅用于字符串。
  • String
    • 加法操作符,可以将将均为字符串的二个操作数与拼接起来。若只有一个操作数,则将另一个操作数转换为字符串在拼接起来。
    • 字符串有着toString()方法,返回相应的字符串。

复杂数据类型

  • Object

全等(===)和相等(==)操作符,全等操作符在未经转换就相等的情况下返回true。

函数(function)

ECMAScript参数在内部使用一个数字表示,通过arguments对象访问这个参数数组。arguments对象与数字相似,但并不是Array实例。

JS因为没有函数签名的特性,故没有重载,如果定义了两个名字的函数,则函数名字属于后定义的函数。

你可能感兴趣的:(JS基本类型和变量)