最新javascript prototype详解优质

在日常的学习、工作、生活中,肯定对各类范文都很熟悉吧。那么我们该如何写一篇较为完美的范文呢?下面我给大家整理了一些优秀范文,希望能够帮助到大家,我们一起来看一看吧。

javascript prototype详解篇一

以前,你可能会直接设置self=this或者that=this等等,这样做当然也能起作用,()会更好,看上去也更专业。

下面举个简单的例子:

复制代码 代码如下:

var myobj = {

specialfunction: function () {

},

anotherspecialfunction: function () {

},

getasyncdata: function (cb) {

cb();

},

render: function () {

var that = this;

ncdata(function () {

lfunction();

rspecialfunction();

});

}

};

();

在这个例子中,为了保持myobj上下文,设置了一个变量that=this,这样是可行的,()看着更整洁:

复制代码 代码如下:

render: function () {

ncdata(function () {

lfunction();

rspecialfunction();

}.bind(this));

}

()时,它会简单的创建一个新的函数,然后把this传给这个函数。()的代码大概是这样的:

复制代码 代码如下: = function (scope) {

var fn = this;

return function () {

return (scope);

};

}

()的.例子:

复制代码 代码如下:

var foo = {

x: 3

};

var bar = function(){

(this.x);

};

bar(); // undefined

var boundfunc = (foo);

boundfunc(); // 3

是不是很好用呢!不过遗憾的是ie8及以下的ie浏览器并不支持()。支持的浏览器有chrome 7+,firefox 4.0+,ie 9+,opera 11.60+,safari 5.1.4+。虽然ie 8/7/6等浏览器不支持,但是mozilla开发组为老版本的ie浏览器写了一个功能类似的函数,代码如下:

复制代码 代码如下:

if (!) {

= function (othis) {

if (typeof this !== "function") {

// closest thing possible to the ecmascript 5 internal iscallable function

throw new typeerror(" - what is trying to be bound is not callable");

}

var aargs = (arguments, 1),

ftobind = this,

fnop = function () {},

fbound = function () {

return (this instanceof fnop && othis

? this

: othis,

((arguments)));

};

ype = ype;

ype = new fnop();

return fbound;

};

}

s("content_relate");

【()方法介绍】相关文章:

1.

javascript中的dom方法

2.

javascript tofixed方法介绍

3.

获取javascript中的方法

4.

关于javascript中的包装对象介绍

5.

javascript数组常用方法介绍

6.

详解javascript中的splice()使用方法

7.

关于异步javascript编程中的promise使用方法

8.

javascript应用到网页中的方法

声明:准根文档网所有作品(图片、文字)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系 saizw@outlook.com