Heim  >  Artikel  >  Web-Frontend  >  Code-Implementierung des JavaScript-Rechners für arithmetische Ausdrücke

Code-Implementierung des JavaScript-Rechners für arithmetische Ausdrücke

黄舟
黄舟Original
2017-03-18 14:53:511502Durchsuche

Der erste Schritt besteht darin, die Funktion „createOperator“ zu implementieren und die Abschlussfunktion zurückzugeben:

var Add = createOperator("+" , function(a,b){return a + b;});
var Minus = createOperator("-" , function(a,b){return a - b;});
var Mul = createOperator("*" , function(a,b){return a * b;});
var pide = createOperator("/" , function(a,b){return a / b;});
Eine Instanz der Abschlussfunktion mit eval und to

String Zwei Methoden

2. Die eval-Methode ist für die Berechnung des arithmetischen

-Ausdrucks verantwortlich

3 Die toString-Methode verwendet die

-Zeichenfolge Formularanzeige

4. Der Anwendungsbereich ist auf binäre

Operatoren beschränkt

var a = new Add(new Value(3), new Value(5));
//8
console.log(a.eval());
//"3 + 5"
console.log(a.toString());

var b = new Mul(new Value(6), new Value(2));
//12
console.log(b.eval());
//"6 * 2"
console.log(b.toString());

var c = new Add(a,b);
//20
console.log(c.eval());
//"3 + 5 + 6 * 2"
console.log(c.toString());
Die Werte während der Operation werden in Form von Werten gespeichert

function Value(value){
    this.value = value || 0;
}

Value.prototype.toString = function(){ 
	return this.value.toString(); 
};
Code-Implementierung der Funktion „createOperator“:

Das obige ist der detaillierte Inhalt vonCode-Implementierung des JavaScript-Rechners für arithmetische Ausdrücke. 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