Ich versuche, einen Ausdruck zu bewerten, der Energie enthält, in der Zeichenfolge als **
. d. h. eval("(22**3)/12*6+3/2")
. Das Problem ist Internet Explorer 11 erkennt dies nicht und wirft Syntaxfehler. Welche Poly-Füllung sollte ich verwenden, um dies zu überwinden? Im Moment verwende ich Modernizr 2.6.2
.Math.pow Alternative "**" ES7 Polyfill für IE11
Beispiel Gleichung wäre,
((1*2)*((3*(4*5)*(1+3)**(4*5))/((1+3)**(4*5)-1)-1)/6)/7
((1*2)*((3*(4*5)*(1+3)**(4*5))/((1+3)**(4*5)-1)-1)/6)/7*58+2*5
(4*5+4-5.5*5.21+14*36**2+69/0.258+2)/(12+65)
Wenn es nicht möglich ist, dies zu tun, was sind die möglichen Alternativen?
Es klingt wie Sie Ihren eigenen Parser schreiben müssen. Oder finden Sie eine, die Ihren Bedürfnissen entspricht. –
Ein Polyfill kann hier nicht helfen, da der Code von alten Browsern als Syntaxfehler analysiert wird. Sie müssen den Code transformieren, bevor er vom Browser als Code gelesen wird (vorzugsweise serverseitig mit etwas wie Babel) –