草庐IT

Getters-Setter

全部标签

javascript - AngularJS:ng-repeat 中的 ng-model setter

关于如何在ng-repeat中获取ng-model的值,我找到了一些很好的答案,但是到目前为止,我还没有找到任何覆盖二传手的东西。假设我有这样的东西:如果我只有一个输入框,我会使用类似this的东西:...var_val='';$scope.itemTitle=function(val){returnangular.isDefined(val)?(_val=val):_val;}...但是,这会改变每个输入框的值。是否可以定义变量和setter,可能使用数组?或者是否有更好的方法在ng-repeat中获取和设置输入框? 最佳答案 a

javascript - 是否可以在 Javascript 对象上定义 'global' getter/setter 方法,以便在获取/设置任何属性时调用它?

假设我们有一个对象:constobj={foo:bar,boop:"beep",}现在我想添加一些功能,该功能会在任何在此对象中设置属性(实际上也为此事获取)时发生。让我们保持简单,假设添加的功能只是一个console.log("aset/getactionwasjusttriggeredonobj!")。我怎样才能做到这一点?高级扩展:命名设置的属性和设置的值。为清楚起见,一些示例行为://simple:obj.foo="notbaranymore!";//consoleoutput:aset/getactionwasjusttriggeredonobj!obj.rand="aran

javascript - 访问 JavaScript 对象的默认 getter/setter

可以使用Object.defineProperty覆盖特定属性的JavaScriptgetter和setter。有什么方法可以访问默认的getter/setter(即如果getter/setter没有被覆盖则使用的函数)?在我的自定义setter中,我希望在某些情况下进行特殊处理,但在其他情况下使用默认处理。我试过:Object.defineProperty(obj,'foo','set':function(val){if(useCustom){doCustomProcessing(obj,'foo',val);}else{obj['foo']=val;}});不幸的是,这会导致堆栈溢

javascript - 函数中的 Getters 和 Setters (javascript)

在像这样的对象中使用get时,get有效:varpeople={name:"Alex",getsayHi(){return`Hi,${this.name}!`}};varperson=people;document.write(person.sayHi);但是对于一个函数,我得到了一个错误。如何在这样的函数中使用Getters和Setters?functionPeople2(){this.name="Mike";getsayHi(){return`Hi,${this.name}!`;}};varuser=newPeople2();document.write(user.sayHi);

javascript - 在对象初始值设定项中设置属性时不再调用 setter : what does this mean?

在此JSMDN页面是这样写的:JavaScript1.8.1noteStartinginJavaScript1.8.1,settersarenolongercalledwhensettingpropertiesinobjectandarrayinitializers.我只是不明白这是要告诉我什么。 最佳答案 此代码片段:varo={};o.seven=7;和这个代码片段:varo={seven:7};通常是等价的;但如果它们前面有这段代码片段:Object.prototype.__defineSetter__('seven',fun

javascript - 未捕获的语法错误 : Setter must have exactly one formal parameter

我试图理解JS上的getter和setter,但我似乎无法通过此错误。任何人都可以提供关于为什么我会收到此错误的任何见解吗?varbook={year:2004,edition:1,getnewYear(){return"Hello,it's"+this.year;},setnewYear(y,e){this.year=y;this.edition=e;}};UncaughtSyntaxError:Settermusthaveexactlyoneformalparameter 最佳答案 当您分配setter代表的值时调用setter

私有(private)属性的 Javascript 动态 getter/setter

我想动态地创建getter/setter方法来检索私有(private)属性。这是我做的。首先,我制作了这个类:functionwinClass(posX,posY,w,h){varx=posX||0;vary=posY||0;varwidth=w||0;varheight=h||0;}然后我用getter/setter方法扩展了winClass,如下:winClass.prototype.getX=function(){returnx;}winClass.prototype.setX=function(val){x=val;}然后我测试了:varwin1=newwinClass(10

javascript - 在 JavaScript 对象中实现 setter 和 getter

我想在本地实现setter和getterjavascript变量。这是一个示例函数:functionsomeThing(){varsomeLocalvariable='';}//withthisfunctionIwantto//returnvalueofsomeLocalvariable//alsoifitispossibletoimplement//setterinthisway.someThing.prototype.getLocalVar=function(){}我希望变量“真正”私有(private)。我不会使用这样的东西:someThing.prototype.someLoc

javascript - 在 Getters 后面封装方法

我正在使用node.js/express堆栈开发一个网站,我正在尝试以对我来说很新的函数式风格进行开发。express方式res.send要求将函数作为方法调用,因为它在函数体中引用this,但调用方法在函数式风格中并不自然。你可以把这个方法放在一个getter函数后面,把它变成一个函数,但我不知道除了代码复杂之外还有什么缺点吗?例子:(function(){"usestrict";functionFoo(){functionbar(){console.log(this.x);}return{bar,getbaz(){vars=this;return()=>s.bar();}}}var

JavaScript getter/setter 和扩展对象

我正在研究JavaScript中的getter和setter,以及它们与用于扩展对象的扩展函数(如jQuery的$.extend和Underscore的_.extend)配合得如何。代码设置如下:vartest={getsize(){returnthis._size;},setsize(val){this._size=val;},}test.size="LARGE";console.log(test.size);//$.extend(test,{getsize(){return"MEDIUM";}});_.extend(test,{getsize(){return"MEDIUM";}}