JavaScript数据类型

来源:互联网 发布:java web start 编辑:程序博客网 时间:2024/06/03 06:55

1、基本数据类型

  1. Number(数值)
  2. String(字符)
  3. Boolean(true/false)
  4. Undefined(未定义)
  5. Null(空对象指针)

2、引用数据类型

Object(对象)

3、typeof返回数据类型

  1. 使用方式:typeof 被检测变量
  2. 使用typeof返回“对象、数组和null”的值都是“Object”类型。
  3. 注意:typeof返回“函数”的值是“Function”类型,但是函数是引用类型。
  4. typeof返回“任意数字和NaN”的值都是“Number”类型。

4、NaN(Not a Number)

  1. NaN与任何值都不相等,包括NaN本身。
  2. isNaN判断参数是否“不是数值”,默认会进行隐式转换。

5、instanceof检测引用数据类型

  1. 为什么要使用instanceof?
    因为使用typeof无法准确检测引用类型,使用typeof,除函数返回“Function”外,其他都返回“Object”
  2. 使用格式:
"返回结果" = 被检测变量 instanceof Object;

6、undefined与false

虽然undefined可以饮食转换成false,但是undefined是不等于false的,是不同的含义。(undefined === false)返回false

7、基本数据类型和引用数据类型的区别

  • 基本数据类型之间的赋值,每个变量都会开辟一个新的内存地址,之间没有联系。
var a = 1;var b = a;console.log(a); //输出:1console.log(b); //输出:1a = 2;console.log(a); //输出:2console.log(b); //输出:1
  • 引用数据类型之间的赋值,都指向同一个内存地址
var a = {name: "wutian"};var b = a;console.log(a.name); //输出:wutianconsole.log(b.name); //输出:wutiana.name = "lyc";console.log(a.name); //输出:lycconsole.log(b.name); //输出:lyc//当b重新指向一个新的对象时,a、b之间没有联系b = {name: "zzw"};console.log(a.name); //输出:lycconsole.log(b.name); //输出:zzw
原创粉丝点击