一、自定义对象
对象是数据的集合,对象有方法和属性。对象有内置对象,也可以自定义对象。
1、直接量对象:var teacher={name:"mo",age:20,say:new Function(alert("我是老师"))}
2、自定义构造函数创建对象:function teacher(_name,_age){ name=_name,age=_age,sex=_sex||"男",say=sayFun; function sayFun(){alert("我是老师")}}
3、对象属性通过.运算符进行访问和操作。teacher.name可以获得name属性,也可以设置name属性。
4、对象自有属性可以进行遍历读取,for(var obj in teacher)会遍历teacher自定义属性和方法。
5、对象的属性和方法可以动态添加、也可以进行删除,删除后使用.运算符属性取值时会获得undefined.方法不能执行。
6、prototype引用原型对象,原型对象初始化时为空。通过对象名.prototype.属性名=属性值,进行赋值操作时,所有生成的对象都会拥有 prototype添加的属性名属性和值。
7、继承prototype可以指定新建对象的原型对象,即继承关系。继承时会继续原型对象的属性值,并像是自己的属性值一样进行读取操作,不能赋值。
8、本地属性和继续属性,本地属性会覆盖继续属性。读取操作时不覆盖属性值。赋值操作时,如果本地有属性就直接赋值,如果本地没有属性名则为本地添加属性名并进行赋值。
二、全局对象
全局对象是Javascript内置的对象,常用有:Array,Boolean、Date、Function、Math、Number、Object、RegExp、String
1、Boolean对象:
2、Date日期对象,常用操作getFullYear()获得4位数年份,getMonth()获得月份(0-11),getDate()获得日期.getDay()获得星期的第几天
setFullYear()设置4位数年份,setMonth()设置月份,setDate()设置日期,setHours设置小时,setMinutes()设置分钟
日期对象可以直接进行减法操作,日期对象可以使用毫秒赋值计算。
3、Math数学对象:常用random()操作获得随机数。
4、Number数字对象:常用方法.toFixed()指定数字位数
5、String字符串对象:常用方法charAt(index)指定index位置的字符,基于0开始。
indexOf(searchValue,[index])从前往后获得searcchValue第一次出现的位置,index是开始位置可选,默认0。
lastIndexOf(searchValue,[index])从后往前获得searcchValue第一次出现的位置,index是开始位置可选,默认string.length-1。
Split(separator,[limit]),使用separator把字符串分为指定个数(limit)的数组.不指定limit时,全部分割,指定时只返回指定个数后面舍弃。
substring(begin,[end])指定开始begin位置与[end]不指定时为string.length-1之间的字符串。
substr(start[,length])指定开始位置与[length]不指定时为结束处的字符串。
toLowerCase()转换为小写操作
toUpperCaese()转换为大写操作
6、object对象:所有对象的基类
常用操作eval(),可封装、或执行。