Los amigos que están familiarizados con JavaScript pueden no estar familiarizados con la función eval (). Podemos usarlo para implementar la ejecución del código dinámico. Incluso escribí una página web que se usa especialmente para calcular las expresiones aritméticas. La capacidad de cálculo es mejor que la de las calculadoras de Google y Baidu, al menos con mayor precisión. Sin embargo, si las cuatro operaciones exceden las cuatro operaciones, la forma de la expresión será muy complicada, como el ejemplo dado por Baidu:
log ((5+5)^2) -3+Pi debe escribirse como Math.log (Math.Pow (5+5,2))*Math.log10e-3+Math.pi para ser utilizado para cálculos con eval. No he pensado en una solución ideal para esto. Ok, este no es el tema principal de este artículo, vamos a dejarlo ir.
He visto a personas usar el siguiente código en el Blog Park, al menos en términos de forma de código, es bastante simple:
// csc.exe noname1.cs /r:c:/windows/microsoft.net/framework/v1.1.4322/microsoft.jscript.dll // Nota: Se deben agregar dos espacios de nombres de microsoft.jscript y microsoft.vsa. public class class1 {static void main (string [] args) {system.console.writeLine ("Hello World"); String Expression = "Var result: int = 0; resultado == 1?/" Success/":/" fallido/""; Microsoft.jscript.vsa.vsaEngine VE = Microsoft.jscript.vsa.vsaEngine.Createengine (); Console.WriteLine (microsoft.jscript.eval.jscriptEvaluate (expresión, ve)); }}Sin embargo, es desagradable que el entorno de compilación ahora proporcione la siguiente advertencia: 'Microsoft.jscript.vsa.vsaengine' es obsoleto: 'No se recomienda el uso de este tipo porque se está desaprobando en Visual Studio 2005; No habrá reemplazo para esta característica. Consulte la documentación de IcodeCompiler para obtener ayuda adicional. Por supuesto, el código se puede compilar y ejecutar normalmente.
A continuación, daré otro método para usar directamente la función EVAL de JavaScript. Con la ayuda del componente COM, la ruta de referencia es %Systemroot %/System32/Msscript.ocx, y publicaré el código completo directamente.
Usando System; usando System.Collections.Generic; Using System.Text; Using System.Diagnossics; Namespace scriptProgramming {Class Program {static void main (string [] args) {string strexpression = "1+2*3"; cadena strResult = eval (strexpression); Console.WriteLine (strexpression + "=" + strResult); Console.WriteLine ("Presione cualquier tecla para continuar"); Console.readkey (); } //// <summary> /// Componente de referencia Com Componente Microsoft Script Control /// %Systemroot %/System32/Msscript.ocx /// Esta función se usa para ejecutar el código dinámicamente //// </summary> //// <param name = "expresión"> </param> /// <<rurners> <//devuelve> public static string (string expression) {String strrRRRRRRRRESUL Pruebe {msscriptControl.scriptControlClass jscript = new msscriptControl.scriptControlClass (); jscript.language = "jscript"; strResult = jscript.eval (expresión) .ToString (); } capt (excepción ex) {debug.fail (ex.message); } return strResult; }}}La explicación detallada anterior de los ejemplos de ejecución de código dinámico (Eval of JS) es todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.