Heim  >  Artikel  >  Web-Frontend  >  JavaScript-Setter- und Getter-Methoden

JavaScript-Setter- und Getter-Methoden

小云云
小云云Original
2017-12-07 15:46:371417Durchsuche

Ich habe beim Schreiben von Projekten noch nie die Setter- und Getter-Methoden von Javascript verwendet, daher ist es ein Konzept, das verstanden werden muss. Heute habe ich diesen Wissenspunkt in einem Buch gesehen, aber er war immer noch vage, also habe ich beschlossen, zu recherchieren und studieren;

Die Eigenschaften eines Javascript-Objekts bestehen aus einem Namen, einem Wert und einer Reihe von Eigenschaften. Werfen wir also zunächst einen Blick auf die beiden Eigenschaften von Objekten:

Dateneigenschaften, die wir häufig verwenden und mit denen wir vertraut sein sollten
Accessor-Eigenschaften, auch Accessor-Eigenschaften genannt

Was sind Accessor-Eigenschaften? Es handelt sich um eine Reihe von Funktionen, die Werte abrufen und festlegen. In ECMAScript5 können Eigenschaftswerte mit einer oder zwei Methoden festgelegt werden. Die beiden Methoden sind Getter und Setter. Daher werden durch Getter und Setter definierte Eigenschaften als Accessor-Eigenschaften bezeichnet.


var o = {
  get val(){
    /*函数体*/
    return ;
  },
  set val(n){
    /*函数体*/
  }
}


Das Obige ist die einfachste Möglichkeit, ein Accessor-Attribut zu definieren. Es ist ersichtlich, dass es sich um Getter- und Setter-Methoden handelt Eigentlich ist es eine Funktion, die die Funktion ersetzt.


var o = {
  a:3,
  get val(){
    return Math.pow(this.a,2);
  }
}

console.log(o.val);//9
o.val = 100;
console.log(o.val);//9


Die Getter-Methode hat keine Parameter und einen Rückgabewert. Wenn die Getter-Methode separat festgelegt wird, können dies nur Attribute sein Der erhaltene Wert kann nicht geändert werden, um die Datensicherheit zu gewährleisten.


var o = {
  a:3,
  set val(n){
    this.a = n;
  }
}

console.log(o.val);//undefined


Die Setter-Methode verfügt über Parameter ist kein Rückgabewert; wenn die Setter-Methode alleine festgelegt ist, kann der Attributwert nicht


var o ={
  a:3,
  get val(){
    return Math.pow(this.a,n);
  },
  set val(n){
    this.a = Math.max(this.a,n);
  }
}

console.log(o.a);//3
console.log(o.val);//9
o.val = 10;
console.log(o.a);//10
console.log(o.val);//100


gelesen werden Aus dem Code ist ersichtlich, dass sich dies auf sein Objekt bezieht (d. h. „o“ im Code); Darüber hinaus können Accessor-Eigenschaften auch vererbt werden.

Verwandte Empfehlungen:


Grundlegende Einführung in Getter und Setter in Javascript

var o ={
   a:3,
  get val(){
    return Math.pow(this.a,n);
  },
  set val(n){
    this.a = Math.max(this.a,n);
  }
}

o.val = 10;
var foo = Object.create(o);
console.log(foo.val);//10
foo.val = 9;
console.log(foo.val);//10


Beispielcode-Sharing der Getter/Setter-Implementierung in JavaScript

Implementierte den Code einer PHP5-Getter/Setter-Basisklasse_php-Fähigkeiten

Das obige ist der detaillierte Inhalt vonJavaScript-Setter- und Getter-Methoden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn