jjzjj

prototype

全部标签

javascript - 不能将 String.prototype.match 用作 Array.some 的函数吗?

这行不通:vars='^foo';console.log(['boot','foot'].some(s.match));UncaughtTypeError:String.prototype.matchcalledonnullorundefined但是这样做:vars='^foo';console.log(['boot','foot'].some(function(i){returni.match(s)}));这是为什么?我以某种方式想象String.prototype.match函数太“原始”之类的,但究竟是为什么呢?因为我没有使用ES2015,所以第二个版本看起来很冗长。有替代方案吗

javascript - jQuery + 扩展 Object.prototype = "c.replace is not a function"

我在我的开源项目中使用jQuery1.5,我自己的Javascript代码中也出现了以下行:/***Object.isEmpty()**@returns{Boolean}*/Object.prototype.isEmpty=function(){/***@deprecatedSinceJavascript1.8.5*@seehttps://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Object*/if(this.__count__!==undefined){returnthis.__count__===0?

javascript - 为什么 String.prototype 的方法可用于字符串文字?

这个问题出自another,它涉及console.dir与字符串文字的行为。特别是,请参阅关于myanswer的评论.众所周知,JavaScript中的String对象有很多方法。这些方法在String.prototype对象上定义。String.prototype.toUpperCase例如。因此,我们可以这样做:vars=newString("hello"),s2=s.toUpperCase();//toUpperCaseisamethodonString.prototype不过,我们也可以这样做:vars="hello",//sisastringliteral,notaninst

javascript - 为什么对 Array 原型(prototype)的这种更改在我的 jQuery 插件中不起作用?

我已将以下方法添加到Array原型(prototype)中:Array.prototype.foreach=function(func){for(vari=0;i在同一个文件中,在上面的代码之后,我有以下jQuery插件:jQuery.fn.addClassForEvents=function(){varthat=this;arguments.foreach(function(event){that.bind(event[0],function(){that.addClass(event[0]);}).bind(event[1],function(){that.removeClass(

javascript - 值、原型(prototype)和属性的区别

好的!首先,这个问题来自一个在jQuery世界中挖掘得太深(并且可能迷路)的人。在我的研究中,我发现jquery的主要模式是这样的(如果需要,欢迎更正):(function(window,undefined){jQuery=function(arg){//ThejQueryobjectisactuallyjusttheinitconstructor'enhanced'returnnewjQuery.fn.init(arg);},jQuery.fn=jQuery.prototype={constructor:jQuery,init:function(selector,context,ro

javascript - 为什么这个 JS 代码无效?

下面的代码片段会抛出错误TypeError:myObj.prototypeisundefined。谁能解释一下为什么?为什么没有newObject()的prototype和下面指定的对象文字?varmyObj={a:"Thisisa",b:"Thisisb"}myObj.prototype.c="Thisisc";//TypeError:myObj.prototypeisundefined如果这不是有效的方法,我该如何实现? 最佳答案 在EcmaScript的早期版本中,您无法直接访问对象的原型(prototype);prototy

构造函数中定义的 Javascript 数组在原型(prototype)中未定义

我对编写OOJS很陌生,但这让我很困惑。所以我设置了新的Call对象,然后定义了我假设为空数组的内容。当我调用AddFieldQueryToArray()时,我得到了UncaughtTypeError:Cannotcallmethod'push'ofundefined关于this.fieldArray.push(field)我真的不知道为什么。我也在构造函数中尝试了this.fieldArray=fieldArray;。functionCall(){varfieldArray=newArray();varqueryArray=newArray();}Call.prototype.Add

javascript - 为什么有些人定义javascript对象的prototype属性值

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭8年前。Improvethisquestion我见过很多人采用以下编码方式,但由于我通常不这样做,而且没有它我也能正常工作,我只是好奇它是否重要。注意:我将我正在谈论的行标记为//thislinefunctionTest(name,something){this.name=name;this.something=something}Test.prototype.name='';//thislineTest.prototype.some

javascript - Javascript 中的对象类型

这是一个来自学习阶段新手的相当普遍的问题,是我需要澄清的问题。我目前正在学习对象,此时我正在学习继承。在本课的这一点上,我已经学习了几种不同的创建对象的方法,但使用this来创建对象。关键字似乎具有最多的功能:functionPerson(){this.eyes=2;this.ears=2;this.arms=2;this.hands=2;this.feet=2;this.legs=2;this.species="Homosapien";}我明白我可能会用它做什么,但是有一个对象是这样创建的:varperson=newObject();person.eyes=2;person.ears

javascript - 原型(prototype)链、构造函数、继承

我正在玩javascript原型(prototype)。我是新手,所以我有一个小问题。我正在使用这个article作为指南。我已经定义了一个产品和一本书。Book.prototype.constructor=Book();这个的目的是什么。我想不通。无论有没有它,我都能成功地调用父构造函数。Book.prototype=newProduct;Book.prototype.constructor=Book;//What'sthepurposeofthis这是我的jsFiddlelink 最佳答案 首先,newProduct()创建一个