为自己写程序之JavsScript代码段测试器
JavaScript的测试,通常是在Firefox的firebug插件中测试的。不过有时只是测试几行代码都要写一个html,再打开浏览器测试运行结果,感觉并不是很方便。
今天花了点时间做了一个简易的JS片段测试器。其实这主要是看了IronJs开源项目以后,才有了这个想法。 得益于JS在.net平台下的执行引擎IronJS的帮助,
这个测试器的实现真是不费吹灰之力。IronJS还是蛮强大的,据说能够成功编译JQuery。不过需要.net 4.0和DLR的支持,自己用无所谓了。
代码如下:
![](/assets/blank.gif)
![](/assets/blank.gif)
{
IronJS.Hosting.CSharp.Context ctx = new IronJS.Hosting.CSharp.Context();
public MainWindow()
{
InitializeComponent();
SetPrint();
}
private void button1_Click(object sender, RoutedEventArgs e)
{
try
{
textBox2.Clear();
ctx.Execute(textBox1.Text);
}
catch (Exception ex)
{
string err = ex.Message;
while (ex.InnerException!=null)
{
ex = ex.InnerException;
err = "\r\n" ex.Message;
}
textBox2.Text = err;
}
}
void SetPrint()
{
// Effectively the same as context.CreatePrintFunction() :-)
var print = IronJS.Native.Utils.createHostFunction<Action<IronJS.BoxedValue>>(ctx.Environment,
delegate(IronJS.BoxedValue str)
{
textBox2.Text = str.ClrBoxed.ToString();
});
ctx.SetGlobal("print", print);
}
}
程序截图:
(vs2010工程)源代码下载
以前写了个闹钟程序,不知道大家是否喜欢,反正我用着还行,可能是自己的孩子看着顺眼吧。今天闲着无事又写了个这个,我主要用来在看JS代码时,
不明白了,复制上运行下,看看结果,知道js还能这么写。希望大家能够喜欢吧!
Todo:
1、利用sharpdevelop的AvolenEdit控件实现JS语法高亮和变色。(已完成)
语法着色版下载
2、再次利用IronJS的JS解析器做个代码自动完成
3、做成JS的IDE了.....
(2和3)要看工作情况和自己的兴趣是否允许了。
更多专业前端知识,请上 【猿2048】www.mk2048.com
为自己写程序之JavsScript代码段测试器相关推荐
- 陈灯可重用代码段管理器(插件版最新版本:3.2;桌面版最新版本:2.3)
[软件简介] 陈灯代码段管理器为一款个人软件作品,其主要功能是对可重用代码段进行管理,包括对代码段的入库.代码段的搜索和代码段的共享等.软件包括插件版本和桌面版本两种版本,插件版本集成在Visual ...
- 关于程序为什么要代码段,程序段
分段就是把相关数据凑到一起,我们都知道计算机指令是一条一条往下进行的,在循环取指令.执行指令的操作.那么计算机如何取得下一指令的地址呢?进行分段就好办了,因为下一条指令就在往下下一个内存的位置嘛! 我 ...
- STM32烧写程序:ST-link V2调试下载器实物和连接方式
ST-link V2调试下载器实物自行到淘宝上购买!!! ST-link V2调试下载器实物 使用专门的编程器/调试器,具有下载功能和调试功能,还可以和IDE结合,实现一键下载和调试. 这种接口是通过 ...
- C语言中内存分布及程序运行中(BSS段、数据段、代码段、堆栈)
BSS段:(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BSS是英文Block Started by Symbol的简称.BSS段属于静态内存分配. 数据段 :数据 ...
- 程序运行时对应的内存分布(BSS段、数据段、代码段、堆、栈)关系
参考:程序运行时对应的内存分布关系 作者:嵌入式基地(公众号) 发布时间: 2021-04-28 网址:https://mp.weixin.qq.com/s/AVDPZawSjg9HtxEm8vsFB ...
- 内存空间分几部分:代码段、数据段,栈,堆 (收集整理)
1.函数代码存放在代码段.声明的类如果从未使用,则在编译时,会优化掉,其成员函数不占代码段空间. 全局变量或静态变量,放在数据段, 局部变量放在栈中, 用new产生的对象放在堆中, 内存分为4段,栈区 ...
- BSS段,数据段,代码段,堆内存和栈
BSS段,数据段,代码段,堆内存和栈 作者:delnabla 日期:2010-10-26 字体大小: 小 中 大 BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的 ...
- BSS段、数据段、代码段、堆与栈
BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BSS是英文Block Started by Symbol的简称.BSS段属于静态内存分配. 数据段 ...
- Linux中的内存段(BSS、数据段、代码段、堆、栈)
在Linux 系统中,在运行一个程序时,程序中未初始化的全局变量会被加载到以下哪个内存段中? BSS(Block Started by Symbol)通常是指用来存放程序中未初始化的全局变量和静态变量 ...
最新文章
- HTTP协议详解(真的很经典)
- import keras 报错 ImportError: cannot import name ‘urlopen‘
- nslookup域名解析
- Jeecg-Boot 1.0 版本发布,基于SpringBoot+Mybatis+AntDesign快速开发平台
- 在普通java类里获取Spring管理的bean
- 殊途同归? 亚马逊和微软都选了云业务老大当公司CEO
- 计算机网络————P1 概念、组成、功能和分类
- 利用JS获取用户当前ip地址
- Unicode编码详解(一):Unicode简介及其分类
- n维空间的欧氏距离公式_n维欧氏空间中球的体积公式与表面积公式之间的微分关系(论文资料).pdf...
- 分光器光衰多少?分光器如何选购?分光器如何使用?
- 相机技术--摄像机720p、1080p、2mp、3mp、5mp;VGA, QHD, FHD, 2K,4K对应的分辨率分别是什么
- 分辨率、像素和PPI
- 学计算机用游戏本好吗,学设计的用什么笔记本好呢
- 立足自主创新,编程猫助推国内高质量编程教育普及
- 让你的工作更高效!快来看看如何使用内网穿透
- 非常感人非常激发人的潜能的信,你一定要看!
- RTSP流访问海康摄像头
- php如何获取json里的值,如何从JSON PHP正确获取值?
- 嵌入式计算机系统简述,嵌入式系统定义_简述嵌入式系统的定义和组成
热门文章
- linux 我的世界 跨平台联机,我的世界跨平台联机 PC、手机等平台数据互通
- 【总结】C语言实用算法系列之知识点梳理_附学生管理系统各模块代码
- eclipse中birt插件使用_waves教学:如何使用通道条插件在DAW中创建模拟工作流
- 区块链以信用为基础,所以目前在中国不可行.
- Python中什么是set
- 安卓欢迎界面和activity之间的跳转问题
- 让 UV4 支持STC 单片机
- 随机森林原理_机器学习(29):随机森林调参实战(信用卡欺诈预测)
- matlab subplot同时显示多幅图像
- 博弈-sg函数的原理和优化(hdu-1536)