您的位置:首页 > Web前端 > JavaScript

JS学习笔记之函数

2017-03-17 21:51 330 查看
函数即对象,对象即对象字面量的集合(零个或多个名/值的集合体),并与对象原型有隐藏的链接

函数字面量

函数字面量本质就是函数表达式。所以它可以出现在任何地方,可以调用其他表达式也可以被其他表达式调用,可以访问自己内部的变量,也可以访问自己被嵌套的函数的变量。通过函数字面量创建的函数对象包含了连到外部上下文的链接,称为闭包。这是JS强大表现力的根基所在。

函数的调用

函数调用的四种模式:

方法调用模式

函数调用模式

构造器调用模式

apply调用模式

1)方法调用模式

当一个函数被保存为对象的一个属性时,我们称它为一个方法。当一个方法被调用时。this就绑定到这个方法。

this到对象的绑定发生在方法被调用时,这个超级迟绑定使得函数可以对this高度复用。通过this取得他们所属上下文的方法称为公共方法。

2)函数调用模式

如果直接调用,this此时绑定的是全局对象。此时可以将该方法定义成一个变量,并将它赋值为this,那么内部函数就可以访问到this,可以将那个变量命名为that。

3)构造器调用模式

这是一套和基于类的语言类似的构建对象的语法。如果在一个函数前面带上new来调用,将创建一个隐藏连接到该函数prototype成员的新对象,同时this指针会被绑定到新对象上。

4)apply调用模式

apply允许创建一个参数数组并用其去调用函数,也允许我们选择this的值,apply方法接受两个值,一个是参数数组,另一个是this。

返回

一个函数总是有返回值,如果没有制定返回值,返回undefined,如果函数以在前面加上new的方式调用,且返回值不是一个对象,则返回this

异常

三个关键函数:throw ->try ->catch

作用域

JS不支持块级作用域,但是有函数作用域,定义在函数中的参数和变量对外部是不可见的,在函数的任何位置定义的变量在函数内的任何位置可见

闭包

函数可以访问它被创建时所处的上下文环境。

级联

通过修改对象的某个状态,使其返回值为this,从而每一次都能返回该对象,返回的结果还可以被下一次调用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript