草庐IT

strict-prototypes

全部标签

javascript - 为什么将属性添加到对象文字的原型(prototype)会更改其 "type"?

所以我有一个简单的isPlainObject方法用于测试JavaScript对象字面量:varisPlainObject=function(obj){returntypeofobj==="object"&&{}.toString.call(obj)==="[objectObject]";};现在我有一个简单的对象:varobj={'one':1,'two':2,'three':3};当我通过isPlainObject(obj)函数运行它时,它按预期工作并返回true。我的问题来自向对象的原型(prototype)添加一个属性:obj.constructor.prototype.four

javascript - `this` 是如何从经典的 Javascript 原型(prototype)制作方法中工作的

我正在学习使用Javascript进行面向对象编程。我从这里得到了这个视频类(class)http://www.objectplayground.com/相对于经典方法,我更了解原型(prototype)方法。在观看类(class)时,我被下面显示的用于处理子类的经典方法的示例暂停了://superclassfunctionAnswer(value){this._val=value;}//defineprototypeproperty'get'forthesuperclassAnswer.prototype.get=functionfn1(){returnthis._val;}//su

javascript - 在 Node 中运行时制作 mocha "use strict"

有没有办法让Mocha在node上运行时以严格模式运行测试?通常您可以通过运行node--use_strict在Node中启用此功能。有没有办法为mocha做同样的事情? 最佳答案 将--use_strict添加到mocha命令。所以你的命令可能是这样的:mocha./test--recursive--use_strict 关于javascript-在Node中运行时制作mocha"usestrict",我们在StackOverflow上找到一个类似的问题:

没有引用 DOM 元素的 Javascript/Prototype : Get css values,?

是否可以通过在CSS文件中定义的类名(例如类的宽度)检索样式属性,而不必从DOM中的实际元素中获取它? 最佳答案 是的。查看document.styleSheets属性。https://developer.mozilla.org/en-US/docs/Web/API/document.styleSheetshttp://www.quirksmode.org/dom/tests/stylesheets.html 关于没有引用DOM元素的Javascript/Prototype:Getcss

javascript - 如何让实例从原型(prototype)函数中删除自身是 JavaScript

如果我有一个JavaScript构造函数,并且我在它的原型(prototype)上设置了一个destroy方法。是否可以从destroy方法中删除(或至少取消设置)实例?这是我正在尝试做的一个例子。Klass.prototype={init:function(){//dostuff},destroy:function(){//deletetheinstance}};k=newKlassk.destroy()console.log(k)//Iwantthistobeundefined我知道我不能简单地使用destroy方法来执行this=undefined,但我认为我可以通过像这样使用超

javascript - 覆盖原型(prototype)属性或函数

functionNinja(){this.swingSword=function(){returntrue;};}//Shouldreturnfalse,butwillbeoverriddenNinja.prototype.swingSword=function(){returnfalse;};varninja=newNinja();log(ninja.swingSword(),"Callingtheinstancemethod,nottheprototypemethod.");现在日志显示我是真的。这意味着Ninja.prototype中定义的swingSword已被覆盖,所以我如何

javascript - 如何在 Node.js 4.0+ 中跳过使用 "use strict"?

使用"usestrict"允许在JavaScript代码中支持ES6特性,Node4.0支持。但是,将它放在每个后端代码文件的开头是很麻烦的。有没有一种方法可以将Node配置为假设“usestrict”始终在应用程序中使用? 最佳答案 您可以将--use_strict命令行选项传递给node命令。这会将您的所有代码视为处于严格模式。或者,您可以使用包https://www.npmjs.com/package/use-strict.这样您就不必每次都提供命令行参数。 关于javascrip

javascript - Getter/Setter 和原型(prototype)链

这个问题在这里已经有了答案:Overrideasetter,andthegettermustalsobeoverridden(1个回答)关闭3年前。在当前使用ES6类语法和get/set语法的JavaScript项目中,我偶然发现了一个我无法解释的行为。首先,一个按预期工作的提取演示:classA{constructor(){this.__value=null;}getvalue(){returnthis.__value;}setvalue(value){this.__value=value;}}classBextendsA{}letb=newB();b.value=2;console

javascript - jquery "this"事件处理程序的绑定(bind)问题(相当于原型(prototype)中的 bindAsEventListener)

在jquery中,事件hadler的绑定(bind)是事件生成DOM元素(this指向dom元素)。在原型(prototype)中更改事件处理程序的绑定(bind)可以使用bindAsEventListener功能;如何从事件处理程序访问实例和DOM元素?类似于HowcanIbindaneventhandlertoaninstanceinJQuery?functionCar(){this.km=0;$("#sprint").click(this.drive);//setupeventhandler}//eventhandler//initIneedtoaccessboththeclic

javascript - 使用原型(prototype)继承的javascript代码中的对象生命周期是什么?

我目前正在阅读“JavascriptGoodParts”,我遇到了以下段落Ifwetrytoretrieveapropertyvaluefromanobject,andiftheobjectlacksthepropertyname,thenJavaScriptattemptstoretrievethepropertyvaluefromtheprototypeobject.Andifthatobjectislackingtheproperty,thenitgoestoitsprototype,andsoonuntiltheprocessfinallybottomsoutwithObjec