HLJ 发布于
2018-10-19 09:52:15

JSz中的静态方法和实例方法的分析

我又回来了,最近忙着喝枸杞,没来写博客感觉很有负罪感,今晚我来写一点小小的知识点

可能我们在用形如Array.of()的方法时会产生一些疑问,为什么我们能不实例化直接使用Array上的of()方法呢,其实原理很简单,就是of()方法时Array的静态方法,所以我们才能直接Array.of()来使用

可能我这个表述不是很清楚,没事,下面我们来通过一个栗子来看一下到底是怎么回事


//首先我们来模拟一个Array的构造函数
function newArray(){}
//再给这个构造函数原型对象上添加方法
newArray.prototype.shiyan = function(){
    console.log("我是实验函数")
}

// 现在我们这样调用的时候
newArray.shiyan();


这木写函数用形如Array.of()调用的时候会报一个错误

这样显然不符合我们想做成Array.of()这种调用方式的要求,别急,我们来试试另一种方法

静态函数:


//首先我们来模拟一个Array的构造函数
function newArray(){}

//我们现在不再去给构造函数的原型对象上添加方法
// 而是给构造函数上添加静态方法
newArray.of=function(){
    console.log("我是构造函数的静态方法");
} //现在我们再来试试能不能通过类似于Array.of()方法调用
newArray.of();


我们可以看到现在我们能通过形如Array.of()调用到方法了,真的是美滋滋。

好了,今天先就这样吧,大家下次见

当前文章内容为原创转载请注明出处:http://www.good1230.com/detail/2018-10-19/260.html
最后生成于 2023-06-18 18:31:03
此内容有帮助 ?
0