我正在四处寻找如何使javascript作为编译代码更有效地运行。我在这个问题jscript
中遇到了jscript.net虽然我对使用它来隐藏我的JavaScript逻辑并不感兴趣,但我对它导致编译代码的事实感兴趣。
我试过谷歌搜索但我似乎得到的是,这是微软约会框架1.1的一个古老的想法。
此外,我有2个阵营的意见说他们讨厌它,因为这是调试的噩梦,而另一方则说它改善了性能。
我没有找到比这更多的信息。
所以,如果我不太关心调试(目前)我应该考虑使用jscript.net来编译更快的代码执行吗?对于我正在使用的框架,是否有更现代的替代方案,或者我根本不考虑它?
最后,{sorry}是否有关于如何实现它的代码示例/说明?
答案 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对我这么好的原因:
我不喜欢的事情:
以下是我在记事本中使用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
文件并运行它。它将自行编译并将启动。整体而言,您不必担心注释中的代码,您可以将其用作图案。