1. JavaScript对象
对象属于一种复合的数据类型,在对象中可以存储多个不同数据类型的属性
对象的分类:
1.内建对象:由ES标准中定义的对象,在任何ES的实现中都可以使用
例如:Math String Number Boolean Function Object...
2.宿主对象:由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象
比如:BOM(浏览器对象模型) DOM(文档对象模型)
例如:我们常用的console.log() 就是DOM 中的对象
3.自定义对象:由咱们开发人员自己定义的对象
使用new关键字调用的函数,是构造函数constructor
构造函数是专门用来创建对象的函数
var obj=new Object();//创建对象
在对象中保存的值称为属性:
向对象添加属性的语法: ①对象.属性名=属性值 ② 对象["属性名"]=属性值
读取对象属性的语法: ①对象.属性名 ②对象["属性名"]
注意:如果对象中没有的属性,不会报错而是返回undefined
重要!!!对象的属性值可以是任意的数据类型
属性名:对象的属性名不强制要求遵守标识符规则,什么名称都可以,但是这里不允许使用,我 们自己定义的使用都必须遵守标识符规则
in运算符:通过该运算符检查一个对象中是否含有指定的属性
如果含有则返回true,如果没有则返回false
(语法 :"属性名" in 对象)
2、函数:函数function
函数也是一个对象
函数中可以封装一些功能(代码),在需要的使用可以执行这些功能(代码)
函数中可以保存一些代码在需要的时候调用
使用typeof检查一个函数对象时,会返回function
函数的创建:
1.使用构造函数创建一个函数对象
2.使用函数声明创建一个函数
3.使用函数表达式创建一个函数/匿名函数
函数的参数:
1.调用函数时解析器不会检查实参的类型,所以要注意,是否有可能会接收到非法的参数,如果有可能则需要
对参数进行类型的检查
2.调用函数时,解析器也不会对检查实参的数量多余的参数将不会被赋值,如果实参少于形参的数据,则没有
对应实参的形参将是undefined
函数的返回值:
可以通过return 来返回函数的返回值
语法:return 值;
return 后面值将会作为函数的执行结果返回,
可以定义一个变量来接收函数的返回值
在函数return后的语句都不会执行
如果return语句后不跟任何值,就相当于返回一个undefined
立即执行函数:函数定义完,立即被调用,这种函数叫做立即执行函数
立即执行函数往往只会执行一次
函数的方法:函数也可以作为对象的属性,如果一个函数作为一个对象的属性保存,那么我们称这个函数是这个
对象的方法。调用函数就所调用对象的方法,但是它只是名称上的区别没有其他的区别。
枚举对象中的属性
使用for ... in 语句
/* for in 语法
for(var 变量 in 对象){
//语句
}
*/