函数的四种存在形态:
1.函数形态
3.构造器形态
4.上下文形态
1.函数形态:
2.方法形态:
<div class="jb51code">
<pre class="brush:js;">
o = {};
o.foo = foo; //将函数foo赋值给对象o的foo属性
o.foo(); //弹出的是object,此时的this表示object
1.函数形态
3.构造器形态
4.上下文形态
<div class="jb51code">
<pre class="brush:js;">
o = {};
o.foo = foo; //将函数foo赋值给对象o的foo属性
o.foo(); //弹出的是object,此时的this表示object
<div class="jb51code">
<pre class="brush:js;">
var lib = {
test:function() {
alert(this); //此处的this表示object(lib对象本身)
//var that = this; //要想匿名函数中this表示lib对象,可以这样
(function() {
alert(this); //此处的匿名函数不属于lib对象,所以this的任然表示window
})();
}
};
lib.test();
1、new创建了对象,并开辟了空间
3、构造方法执行结束,返回this
改变的东西有:构造函数改变了函数的返回值;如果函数的返回值是一个对象,那么就按照返回值来返回;如果返回值不是一个对象就忽略返回值,直接返回this;
以上这篇浅谈JavaScript函数的四种存在形态就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。
原文链接:https://www.f2er.com/js/48053.html