js实现lua解释器,类似halcon代码编辑器一行一行解释执行

解释器

只能一行一行执行,不能有一行代码跨越多行,不支持lua的表,只支持for i的循环,支持自定义函数,并且可以跳到函数里面一行一行执行,这里的函数并不是lua的函数,而是由js状态控制执行函数里的代码,if for 循环一样也是由js状态机跟踪状态并执行对应指令,函数之前的变量使用lua的表进行隔离,每个函数对应一个函数名的表,函数直接的参数传递由js状态机自动复制到函数对应的表中,包括函数的返回值。

代码示例

lua 复制代码
function test()
  for i=0,10,1 do
   f=1
   d=1
   for j=0,5,1 do
     if(d==1)
     then
       b=f*2
     else
       b=1
     end
   end
  end
end
  
test()

效果图

相关推荐
XiaoLeisj34 分钟前
Android Kotlin 全链路系统化指南:从基础语法、类型系统与面向对象,到函数式编程、集合操作、协程并发与 Flow 响应式数据流实战
android·开发语言·kotlin·协程
dapeng28702 小时前
分布式系统容错设计
开发语言·c++·算法
qq_417695052 小时前
代码热修复技术
开发语言·c++·算法
badhope6 小时前
Mobile-Skills:移动端技能可视化的创新实践
开发语言·人工智能·git·智能手机·github
码云数智-园园8 小时前
微服务架构下的分布式事务:在一致性与可用性之间寻找平衡
开发语言
C++ 老炮儿的技术栈8 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
hz_zhangrl8 小时前
CCF-GESP 等级考试 2026年3月认证C++一级真题解析
开发语言·c++·gesp·gesp2026年3月·gespc++一级
Liu628888 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
IT猿手8 小时前
基于控制障碍函数的多无人机编队动态避障控制方法研究,MATLAB代码
开发语言·matlab·无人机·openclaw·多无人机动态避障路径规划·无人机编队
AI科技星8 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘