一、名词解释
1.基于对象
一切皆对象,以对象的概念来编程
2.面向对象编程
对象:人们要研究的任何事物,不仅能表示具体事物,还能表示抽象的规则,计划或事件,属性的无序集合,每个属性可以存一个值(原始值,对象,函数)
对象的属性:用数值描述对象的状态
对象的方法:对象具有可实施的动作
类:具有相同或相似的性质的对象的抽象就是类,类的具体化(实例化)就叫做对象
3.javascript中的对象
全局对象Math 本地对象 (构造函数,实例化之后才可用)Number() String() Array() Boolean() Function() Date() RegExp() 宿主对象:BOM DOM
二、对象的应用
1.创建(声明)对象
//json方式var obj={};//构造函数实例化对象function fun(){}var obj=new fun()//Objectvar obj=new Object(); //Object是js 的顶层对象,一切对象都可看做是由Object实例化而来
2.对象赋值属性
//构造函数声明后在赋值属性function people() {}var ls=new people();var zs=new people();ls.name="lisi";zs.name="zhangsan";console.log(ls.name,zs.name) //lisi zhangsan//声明后赋值,每个对象的属性都不同//构造函数声明时赋值属性,this表示实例化的对象,所有的属性值都一样function people() { this.name="zhangsan"}var ls=new people();var zs=new people();console.log(ls.name,zs.name) //zhangsan zhangsan//json对象var obj2 ={ name:"zhangsan", age:18, jump:function(){ alert('jump') }}console.log(obj2.name)
3.对象的访问
1)访问对象的属性
对象.属性名
对象["属性名"]
2)访问对象的方法
对象.方法名()
对象["方法名"]()
4.对象及其属性的删除
对象属性的删除:delete 对象.属性
对象的删除:对象=null;
5.javascript中自定义对象的方式
1)通过类(构造函数实例化对象)能够继承人类思考特性的方式
2)通过json方式:javascript中独有的创建对象的方式,内存中快速存储、传递、读取的方式,但不可批量处理,以键值对的方式存储任何的数据类型
6.对象的存储方式
变量保存的仅仅是对象的引用地址
对象保存在堆中,每创建一个对象,就开辟一块内存
当javascript引擎检测到对象没有被引用的时候,将它当做垃圾,等待回收
某一时刻回收垃圾对象