类_JavaScriptTools模块开源
.版本 2.程序集 窗口程序集_启动窗口
.程序集变量 JsTools, 类_JavaScriptTools
.程序集变量 Error, ErrorInfo
.程序集变量 ResInfo, ResInfo
.子程序 _按钮_加载代码_被单击
JsTools.reset ()
.如果真 (取反 (JsTools.execJs (编辑框1.内容)))
ErrorMsg ()
返回 ()
.如果真结束
信息框 (“Js加载成功”, 0, “提示”, _启动窗口)
.子程序 ErrorMsg
.局部变量 ErrorStr, 文本型
Error = JsTools.getErrorInfo ()
ErrorStr = “发现错误: ” + #换行符 + “第 ” + 到文本 (Error.Line) + “ 行 第 ” + 到文本 (Error.Column) + “ 列” + #换行符 + “错误代码: ” + 到文本 (Error.Code) + #换行符 + “错误信息: ” + Error.Msg
信息框 (ErrorStr, #错误图标, “错误提示”, _启动窗口)
.子程序 _按钮_列举所有函数_被单击
.局部变量 Procedures, Procedures, , "0"
.局部变量 Count, 整数型
.局部变量 Index, 整数型
.局部变量 ProceduresStr, 文本型
Count = JsTools.getProcedures (Procedures)
.计次循环首 (Count, Index)
ProceduresStr = ProceduresStr + Procedures .ItemName + “(” + 到文本 (Procedures .ItemNumArgs) + “)” + #换行符
.计次循环尾 ()
信息框 (ProceduresStr, 0, “函数列表”, _启动窗口)
.子程序 _按钮_查看代码对象_被单击
JsTools.getCodeObject ().查看 ()
.子程序 _按钮_Eval表达式运行_被单击
ResInfo = JsTools.eval (编辑框2.内容)
.如果真 (ResInfo.RunBool = 假)
ErrorMsg ()
返回 ()
.如果真结束
信息框 (“计算结果: ” + ResInfo.Value + #换行符 + “返回类型: ” + 到文本 (ResInfo.ResTypeName), 0, “提示”, )
.如果真 (ResInfo.ResType = #ResType_Object)
ResInfo.ResObj.查看 ()
.如果真结束
.子程序 _按钮_Eval对象运行_被单击
ResInfo = JsTools.evalObj (JsTools.getCodeObject (), #EvalType_String, “getMd5”, “11111”, “22222222222”)
.如果真 (ResInfo.RunBool = 假)
ErrorMsg ()
返回 ()
.如果真结束
信息框 (“计算结果: ” + ResInfo.Value + #换行符 + “返回类型: ” + 到文本 (ResInfo.ResTypeName), 0, “提示”, )
写这个模块的目的是为了更快速的编写JS调试工具(针对易语言,其他的语言应该也有类似的方法)
模块功能介绍
1.execJs 执行JS代码,执行失败会返回错误信息,相当于JS调试工具中的 加载代码
2.getProcedures 获取所有的函数,相当于JS中加载代码后 获取所有的函数,方便调用
3.eval 运行JS代码,相当于JS调试工具中的系统运行
4.getErrorInfo 当 execJs evalevalObj 返回失败的时候,可以获取错误信息
5.getCodeObject 获取代码对象,也就是加载的整个JS对象
6.evalObj 通过代码对象执行函数,详情参照 <JavsScriptTools演示.e> 中的源码
7.getThis 获取整个脚本对象,方便扩展命令
8.reset 清除加载的JS对象,但不销毁
**** Hidden Message *****
太好了,谢谢楼主。 谢谢分享,不错不错,就要塌了 LZ,辛苦了 类_JavaScriptTools模块开源 类_JavaScriptTools模块开源 太好了,谢谢楼主。
页:
[1]