2 sinat 26049527 sinat_26049527 于 2016.02.11 15:03 提问

在网页中编写js代码并运行

这是代码:

 <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>在网页中编写代码并运行</title>
</head>
<body>
    <div align="center">
    <textarea id="TextArea1" style="width: 612px; height: 300px"></textarea>
    <input id="Button2" type="button" value="执行程序" onclick="return Button1_onclick()" style="width: 145px" />
    </div>
<script>
    function Button1_onclick(){
    try
    {
        var cmdWin = document.getElementById("TextArea1");  // 获取文本框的引用
        var str = "try{" + cmdWin.value + "}catch(e){alert('你的代码有错:'+e.description);}";// 构造函数体
        var cmd = new Function(str);    // 构造函数
        cmd();                          // 调用函数
    }
    catch(e)                            
    {
        alert("错误:"+e.description);  // 输出错误信息
    }
    }
</script>  
</body>
</html>

这个程序是如何实现在网页中编辑js代码并运行的?看了老半天,几行代码完全没搞明白,望广大朋友们帮我详细解答一下,谢谢了

2个回答

haroldfinch
haroldfinch   2016.02.11 20:43

应该是把写好的代码确认无误后传给str,然后调用函数cmd嘛

caozhy
caozhy   Ds   Rxr 2016.02.11 21:57

new Function(str)
关键是这一行,它可以把js的程序源代码字符串视作一个函数并且执行。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
浏览器内写JS测试代码--测试JS
控制台处输入JS代码,可及时显示执行,不用打开页面输入JS,保存,打开浏览器执行这么复杂的步骤。 Var  d=new Date(); 回车   -------注意js区分大小写;有智能感知功能; d.getTimezoneOffset();回车 如下图 d=new Date() d.getTimezoneOffset()   普通视图   --输入后回车执行数据就可以了
网页中运行JS代码
function Preview(obj) {   var TestWin=open('');   TestWin.document.write(obj.value); } //欢迎来到站长特效网,我们的网址是www.zzjs.net,很好记,zz站长,js就是js特效,本站收集大量高质量js代码,还有许多广告代码下载。 function copyCode(obj) {     var
关于在页面中JS代码的位置
javascript写在head和body里的区别 页面加载的时候是从上往下执行的,即先执行再执行。 Javascript写在哪里?概括起来就是三种形式: 1. 内部:Html网页的中; 2. 内部:Html网页的中; 3. 外部:外部JS文件里。 1. 内部:Html网页的中: js在head里时,由于页面加载循序的原因,不需要首次加载的js建议放入head
怎么用c#编写浏览器或者执行javascript代码?
由于项目需要,需要在c#程序中执行HTML5代码和javascript代码。我一想总不能为了这个写个解释程序吧?得写到猴年马月啊?再说当初编译原理这门课刚及格,基本功也不好。所以上网查了查,javascript解释程序有好多,不过大致都可以分为IE内核,chrome内核和FireFox内核,这里推荐一个工具供大家研究。OWASP-Xenotix-XSS-Exploit-Framework-mast
Node.js中运行JavaScript代码
最近学习JS的内容,有幸得到Bill的指点,之前自己运行JS的脚本是在浏览器上,之后惊喜的发现,可以在加载Node.js环境中,在命令窗口运行脚本。这样做的好处是什么呢?大大的减少了窗口来回切换的的频率,提高我们的效率。看起来也是很高大上的。
Javascript代码该写在什么位置
javascript代码存放一般有两种方法: 一:javascript放置在HTML页  1. 之间  当浏览器载入网页body部分的时候,就会执行其中嵌入的javascript语句,执行之后输出的内容就显示咱网页中。 ...  2.之间 有时候不需要一载入HTML页面就执行javascript程序,而是用户触发了某个事件,才需要调用javascript程序,这
在页面中直接嵌入JavaScript代码
一 标记 在HTML文档中通过使用标记将JavaScript脚本嵌入到其中,在HTML文档中可以使用多个标记,每个标记中可以包含多个JavaScript的代码集合。 script标记属性说明 属性 说明 language 设置所使用的脚本语言及版本 src 设置一个外部脚本文件的路径位置 type 置所使用的脚本语言,此属性已代替language属性
如何用Vue.js写出第一个程序
如果说是JQuery是手工作坊,那么Vue.js就像是一座工厂,虽然Vue.js做的任何事情JQuery都可以做,但无论是代码量还是流程规范性都是前者较优。本篇文章会大量参考Vue.js官方中文教程以及Vue-resource.js插件GitHub主页英文版(下次再写吧)好了,开始吧准备首先,我有如下假设:你会用html+css+javascript 写一些网页你知道什么是DOM和BOM(Brow...
网页js脚本注入,可执行任意代码。
网页js脚本注入,可执行任意代码。这里有个实例教程,通过注入实现跳过验证码。
JavaScript_在什么位置编写 JS 代码
1.相关介绍DOM:Document Object Model(文本对象模型) D:文档 – html 文档 或 xml 文档 O:对象 – document 对象的属性和方法 M:模型 DOM 是针对xml(html)的基于树的API。 DOM树:节点(node)的层次。 DOM 把一个文档表示为一棵家谱树(父,子,兄弟) DOM定义了Node的接口以及许多种节点类型来表示XML节