后端传过来一个JS代码,前端拿到之后执行

今天收到了一个需求,居然是后端给我传过来一个JS代码,然后前端去执行。

因为后端传过来的JS代码是一个字符串,所以刚开始有点懵,以前也没有做过这样的东西所以刚开始没有方法。

这个项目是使用了前后端分离的格式,所以代码在服务器渲染是不可能了,所以只能在浏览器端想方法。

再网上扎到了几个方法,

一、使用Function方法,代码为如下

var str = 'alert(1)';
(new Function(str))();

二、使用eval方法

var str = 'alert(1)';
eval(str)

三、如果你的项目是后端渲染的页面可以接在<script></script>中渲染出来,这样的话就不需要前端去处理了。

以上三个方法都可以使用,主要看你的项目需求来决定用什么了。

猜你喜欢

转载自www.cnblogs.com/gendan5/p/11447959.html