1、js中的数据类型:

1.1 String 字符串
1.2 Number 数值
1.3 Boolean 布尔值
1.4 Null 空值
1.5 Undefind 未定义
以上都是基本数据类型。。基本数据类型都是单一的值 123 true “hello”
值与值之间没有任何联系
基本数据类型放在栈内存中

1.6 Object 对象:

1、对象属于一种复合的数据类型,在对象中可以保存多个不同的数据类型的属性。
2、你对象保存到堆内存中的,每创建一个新的对象,就会在堆内存中开辟出一个新的空间,而变量保存的是对象的地址(对象的引用),如果两个变量保存的是同一个对象的引用,当一个通过一个变量修改属性时,另一个也会受到影响。

1.6.1 对象的分类:

1、内建对象:

由ES标准定义的对象,在任何的ES的实现中都可以使用。
比如:Math String NUmber Boolean Function object….

2、宿主对象:

由Js的运行环境提供的对象,目前来讲主要指有浏览器提供的对象。
比如:BOM DOM
console.log();

3、自定义对象:

由开发人员自己创建的对象。

1.6.2 自定义创建对象:

  1. /*
  2. *使用new关键字调用函数,是构造函数constructor
  3. *构造函数是专门用来创建对象的函数
  4. */
  5. var obj = new Object();
  6. console.log(typeof obj);//查看obj的类型
  7. //向对象添加属性
  8. obj.name="孙悟空";
  9. obj.age=18;
  10. //读取对象里面的属性
  11. console.log(obj.name);
  12. console.log(obj.age);
  13. //删除对象属性
  14. delete obj.name;
  15. //检查obj中是否含有test属性
  16. //语法:"属性名" in 对象
  17. //返回值为boolean类型
  18. console.log("test2" in obj);

1.6.3 使用对象字面量:

使用对象字面量,可以在创建对象时,直接指定对象中的属性
语法:{属性名:属性值,属性名:属性值}

  1. var obj = {
  2. name:"张三",
  3. age:18,
  4. test:{
  5. name:"悟空"
  6. },
  7. method:function(){
  8. }
  9. }
  10. console.log(obj.test.name);