对象
什么是对象
- 多个数据的封装体
- 用来保留多个数据的容器
- 一个对象代表事实中的一个事物
为什么要用对象
- 对立治理多个数据
对象的组成
- 属性:属性名(字符串)和属性值组成
- 办法:一种特地的属性(属性值是函数)
如何拜访对象外部数据
- .属性名 : 编码简略,有时不能用
- ['属性名'] : 编码麻烦,能通用
什么时候必须应用['属性名']的形式
1.属性名蕴含特殊字符: - 空格
2.属性名不确定
函数
什么是函数
- 实现特定性能的n条语句的封装体
- 只有函数是能够执行的,其余类型的数据不能执行
为什么要用函数
- 进步代码复用
- 便于浏览交换
如何定义函数
函数申明
function fn1(){ console.log('fn1()')}
表达式
var fn2=function(){ console.log('fn2()')}
如何调用(执行)函数
- test():间接调用
- obj.test() : 通过对象调用
- new test() : new 调用
- test.call/apply(obj):长期让test成为obj的办法进行调用
回调函数
什么函数才是回调函数
- 你定义的
- 你没有调用
- 但最终它执行了
常见的回调函数
- dom事件回调函数
- 定时器回调函数
- ajax申请回调函数
- 生命周期回调函数
IIFE
全称:Immediately-Invoked Function Expression(立刻执行函数表达式)
作用:
- 暗藏实现
- 不会净化内部命名空间(全局命名空间)
- 用它来编码js模块
(function (){ //匿名函数自调用 var a = 3; console.log(a+3);})()var a = 4console.log(a);(function (){var a = 1function test () { console.log(++a)}window.$ = function () { //向外裸露一个函数 return{ test:test}}})()$().test() //1.$是一个函数 2.$执行后返回的是一个对象