我可以在vs2010中使用jscript吗?

时间:2014-03-10 08:16:13

标签: asp.net jscript.net

我正在四处寻找如何使javascript作为编译代码更有效地运行。我在这个问题jscript

中遇到了jscript.net

虽然我对使用它来隐藏我的JavaScript逻辑并不感兴趣,但我对它导致编译代码的事实感兴趣。

我试过谷歌搜索但我似乎得到的是,这是微软约会框架1.1的一个古老的想法。

此外,我有2个阵营的意见说他们讨厌它,因为这是调试的噩梦,而另一方则说它改善了性能。

我没有找到比这更多的信息。

所以,如果我不太关心调试(目前)我应该考虑使用jscript.net来编译更快的代码执行吗?对于我正在使用的框架,是否有更现代的替代方案,或者我根本不考虑它?

最后,{sorry}是否有关于如何实现它的代码示例/说明?

2 个答案:

答案 0 :(得分:2)

我正在服务器端开发客户端中的.html页面(html5 + jquery + bootstrap),Web处理程序(带有JScript .NET v10的.ashx文件)。

QuickSharp mini-ide支持JScript .NET,简单且快速!

贾斯汀罗杰斯'书" Microsoft JScript NET Programming"是必须的。

答案 1 :(得分:1)

最近我经常使用jscript.net(以及WSH附带的'旧'jscript)。

但是从不在Visual Studio中使用它(你可能已经找到了this)。但是只需要简单的记事本++。

这就是让jscript对我这么好的原因:

  1. 它可以在每个Windows系统上使用(即使是最古老的XP机器也有一些.net框架),因为每个.net框架都附带了jscript编译器。
  2. 由于jscript指令,它非常适合'内置'批处理文件(示例如下)
  3. 有很多javascript代码几乎可以直接在jscript.net中使用。毕竟javascript是世界上最流行的编程语言。
  4. 它背后有.net电源
  5. 我不喜欢的事情:

    1. 看起来它有点被微软抛弃了。
    2. 即使在MSDN上,代码片段/示例也很少。尽管在90%的情况下很容易将C#代码重写为Jscript。
    3. jscript.net中缺少一些很酷的功能,但在其他两个原生.net语言(vb和cs)中可用 - dll import,generics ..
    4. 以下是我在记事本中使用jscript.net的方法:

      @if (@X)==(@Y) @end /****** silent jscript comment ******
      
      @echo off
      ::::::::::::::::::::::::::::::::::::
      :::       compile the script    ::::
      ::::::::::::::::::::::::::::::::::::
      setlocal
      
      :: remove the rem bellow when you fell your code is ready to use
      rem if exist "%~n0.exe" goto :skip_compilation
      
      :: searching the latest installed .net framework
      for /f "tokens=* delims=" %%v in ('dir /b /s /a:d /o:-n "%SystemRoot%\Microsoft.NET\Framework\v*"') do (
          if exist "%%v\jsc.exe" (
              rem :: the javascript.net compiler
              set "jsc=%%~dpsnfxv\jsc.exe"
              goto :break_loop
          )
      )
      echo jsc.exe not found && exit /b 0
      :break_loop
      
      
      
      call %jsc% /nologo /out:"%~n0.exe" "%~f0" 
      ::::::::::::::::::::::::::::::::::::
      :::       end of compilation    ::::
      ::::::::::::::::::::::::::::::::::::
      :skip_compilation
      
      ::
      ::::::::::
      "%~n0.exe" %*
      ::::::::
      ::
      endlocal
      exit /b 0
      
      ****** end of jscript comment ******/
      
      import System;
      Console.WriteLine( "Boo" );
      Console.WriteLine("Press any key to continue...");
      Console.ReadKey();
      

      您可以将其保存为.bat文件并运行它。它将自行编译并将启动。整体而言,您不必担心注释中的代码,您可以将其用作图案。