js中的prototype使用的问题

2021-01-29 06:45:38 字数 2301 阅读 5599

1楼:匿名用户

我没有去测试**,但是我可以解释下这2种情况

第一种情况

//创建一个数组,来保存获取的节点和节点数组*****************

function base()

这里的elements是属于各自的对象的,也就是通过new 出的对象,由于你的写法返回的是一个new base()的对象,因此$()这个操作实际上是返回的一个base对象,

然后 你在window.onload中写了2个语句,如下

$().getid('box').css('color','red'); (这里的$()和下面一句的$()是2个不同的对象,虽然看起来一样,但是他们拥有自己的elements属性,因此此语句的这个$().

elements 是1,而下面那个$()的对象是3,也就是3个p标签)

alert($().gettagname('p').elements.length);这里的$()是一个新对象,返回3个p

第二种情况

function base() {}

base.prototype.elements = ;

放在prototype中的属性,是所有对象共享的,因此下面2句访问的是共享的elements

$().getid('box').css('color','red');

alert($().gettagname('p').elements.length);

第一句往共享的原型链对象elements放了一个box,第二句往共享的原型链对象elements放了3个p,所以elements总共是4个元素,不管你创建多少$(),都指向同一个!

javascript里面的prototype是什么意思?怎么用?能举个例子吗?

2楼:匿名用户

翻译一下是原型的意思~也就是说是js对象的原型,一般用来扩展原型的时候用~或者用到原型链式的继承上去~举个例子:

声明一个对象var abc=function()

abc现在是一个对象(函数也是对象的一种),然后我们扩展一下这个对象,给它一个方法:

abc.prototype.say=function()

这样就扩展了原来的函数对象了~是用的时候直接var a=new abc();

a.say();就会弹出小明来了。这么做的好处是不会额外产生内存,所有实例化后的对象都会从原型上继承这个方法。

至于原型链继承的话你可以去搜一下我就不举例子了~不懂的话可以再问我~

3楼:

javascript 是一种 prototype based programming 的语言, 有别于(java,c++)的 class based programming 继承模式。

javascript语言特点:

函数是first class object, 也就是说函数与对象具有相同的语言地位

没有类,只有对象

函数也是一种对象,所谓的函数对象

对象是按引用来传递的

javascript中的每个对象都有prototype属性,javascript中对象的prototype属性:返回对象类型原型的引用。

在javascript中对于任何函数都拥有这5大属性。由于prototype是一个对象,所有可以添加属性和方法,用来实现继承和其他维度的扩展。

functionperson(name,age);}

//给person添加几个属性

person.prototype.gender="女";

person.prototype.get***=function();

//定义学生对象

functionstudent(num)

student.prototype=newperson("alice",23);

vars=newstudent(123434);

console.log(s.show());

//通过上看出

当查找一个对象的属性/方法时,javascript 会向上遍历原型链,直到找到给定名称的属性为止。

到查找到达原型链的顶部 - 也就是 object.prototype - 但是仍然没有找到指定的属性,就会返回 undefined

这里做一个简单的介绍,如果要完全的搞清楚,你可以看看《javascript权威之南》《javascript高级编程》《javascript精粹》

4楼:匿名用户

prototype是js的难点之一,要真正理解需要花点功夫,

字面意思叫原型,可用于模拟类的继承

如c#通过继承链寻找成员,而js通过原型链来找

请问js中和有什么用,js中的有什么作用?

1楼 匿名用户 很明显啊,js中的注释和java一样而你说这个明显是html注释,什么意思呢,是防止有些浏览器不支持script标签中使用javascript,如果加入了角叹号注释浏览器解析到这的时候就会把里面内容当做注释忽略掉,不会报错 2楼 匿名用户 你说是这个主要是在html页面里面嵌入js ...

关于switch语句的使用问题,关于C语言问题中switch语句的使用问题

1楼 下海的孤魂 switch结构里少了default语句。 应该如下这样,所有case完成后,最下面加上一个default。 以后请教大家时,出错信息里把行数也拷贝上来,可以更快地看出问题出在 。比如 warning c4060。。。 之前,应该还有出错的行数信息的。 switch int a 1...

请问js文件中如何调用另js文件的方法

1楼 村里泡泡 可以调用的呀,js文件是顺序加载的。 你要确保你调用的那个方法文件先加载完成,然后在加载你自己的js文件。 注意加载顺序,然后按照那个方法的调用方式去掉用就行了。 如何在js文件中调用另一个js中的方法 详细请进 2楼 felix阳 可以使用javascript的document w...