jsBin,codePen这些js playground应用的原理是什么?

我想请问这些应用是怎么实时执行代码并显示出来,还有console,他们是怎么做到的?

说个大概的原理就可以了

阅读 3.2k
1 个回答

我猜是eval,读取你在js输入的文本部分,经过安全性检测过滤后,调用eval,来执行代码段。但是肯定有其他一些措施,因为我试过在自己定义的那些变量都没有作为全局暴漏出来,应该是进行了个函数包裹处理吧。我能想到的实现方法就是这样了

eval('console.log("ok")')
output ok

就像上面的代码,'console.log("ok")'就是你写的代码被他读取为了字符串,然后调用eval执行

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题