数码资讯
Javascript的eval()函数()使用的一个例子
eval函数很简单。它正在将字符串传递给JS解释器。Javascript解释器将字符串翻译成Javascript代码并执行它。 最简单的例子之一: 复制代码代码如下所示: eval(警报(1 + 1)); 脚本> 将字符串解释为js代码并执行它非常简单,并弹出2。 当然,上面的例子只是一个玩具,和在
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
eval函数很简单。它正在将字符串传递给JS解释器。Javascript解释器将字符串翻译成Javascript代码并执行它。
最简单的例子之一:
复制代码代码如下所示:
eval(警报(1 + 1));
脚本>
将字符串解释为js代码并执行它非常简单,并弹出2。
当然,上面的例子只是一个玩具,和在现实中没有人会上当使用它。我认为每个人最基本的eval函数应使用DOM,比如我们DIV1,格式,div3,然后在document.getelementbyid ID,我们没有办法得到的,所以最简单的方法是在for循环中,使用eval拼接这样的程序。例如,这种情况。
复制代码代码如下所示:
对于(var循环= 1;循环< 10;循环+){
eval(document.getelementbyid(div+环).innerHTML =123);
}
脚本>
最基本的使用方法后,我们仍然认为功能是不够的,如果这个功能只有很少使用,太无聊了。所以我们就把eval()函数的一个点。
让我们用eval的范围开始,看看这样的功能:
复制代码代码如下所示:
eval(var i = 3 );
警报(一);
脚本>
代码非常简单,结果可以是3,然后比较代码:
复制代码代码如下所示:
var测试=函数(){()
eval(var i = 3 );
警报(一);
}
测试();
警报(一);
脚本>
结果是前3个,然后是未定义的。
也就是说:,eval代码()函数动态执行不创建一个新的范围,它的代码在当前范围内执行。所以说,eval()函数,也可以使用这个说法,和其他的电流范围对象。
在伊江,一个支持这样一个非常相似的一种被称为execscript eval函数()(),我们可以写一段简单的代码。
复制代码代码如下所示:
var测试=函数(){()
execscript(var i = 3 );
警报(一);
}
测试();
警报(一);
脚本>
结果表明,2的3,这表明该execscript功能特点。首先,它类似于eval,这可以解释字符串插入JS代码并执行,但其范围不是当前的范围,但全球范围。当我们把上面的代码在Firefox和谷歌浏览器,尝试找到代码在Firefox上execscript无效,所以这也说明了一个问题。execscript浏览器兼容性问题。
所以这是一个我们如何把这两个功能的优势放在一起的问题,也就是说,全球浏览器的兼容性,互联网搜索,以及他们自己的总结:
复制代码代码如下所示:
无功strongeval =功能(代码){
如果(window.navigator.useragent.indexof(MSIE)> = 1){
execscript(代码);
}
如果(window.navigator.useragent.indexof(火狐)> = 1){
Window.eval(代码);
}
{其他
execscript(代码);
}
};
var测试=函数(){()
strongeval(var i = 3 );
}
测试();
警报(一);
脚本>
这可以与FF和IE完全兼容,其基本代码是eval和window.eval在FF不是等价的,这是一个奇妙的东西。
此外,我们还可以使用eval +实施卖淫的技巧。
在一般意义上,我们可以编写这样的代码:
复制代码代码如下所示:
var obj =函数(){()
这个= 1;
b = 2;
这个,C=5;
this.fun =函数(){
这个;
}
};
var o =新的对象();
O.fun();
警报(O.C);
左右:
复制代码代码如下所示:
var obj = { {
甲:1,
乙:2,
丙:5,
乐趣:函数(){
这个;
}
}
或者用这种方法:
复制代码代码如下所示:
var obj =函数(){()
这个= 1;
b = 2;
这个,C=5;
};
obj.prototype.fun =函数(){
这个;
}
var o =新的对象();
O.fun();
警报(O.C);
不管怎样,你对这样的事感到厌烦吗让我们选择一种选择,至少在感官上是舒服的。
复制代码代码如下所示:
无功funtemp =函数(){()
C = A + B;
}
var obj = { {
甲:1,
乙:2,
C:5
};
VaR的乐趣;
与(obj){
eval(快乐=+ funtemp);
}
(有趣);
警报(obj。C);
脚本>
这是很勉强的,那么好,我们不谈什么舒服不舒服。让我们讨论这种情况。
复制代码代码如下所示:
Var DBCommon =函数(){()
警告(1);CreateConnection();
警告(2);OpenConnection();
警告(3);CreateCommand();
警告(4);ExcuteCommand();
警告(5);密切相关();
}
Var SQLServerCommon = { {
CreateConnection:函数(){ alert(建立SQL Server连接)};}
打开一个网络连接:(){ alert(功能打开SQL Server连接)};},
CreateCommand:(功能){ alert(创建SQL Server的命令);},
excutecommand:函数(){ alert(执行的DSQL服务器命令)},
紧密联系:函数(){ alert(关闭SQL Server连接)};}
};
Var OracleCommon = { {
CreateConnection:(功能){ alert(建立连接Oracle);},
打开一个网络连接功能(){ alert(:开放aoracle连接);},
CreateCommand:(功能){ alert(创建命令);},
excutecommand:函数(){ alert(执行doracle命令)};}
紧密联系:函数(){ alert(关闭Oracle连接);}
};
与(sqlservercommon){
eval(forsqlserver =+ dbcommon);
}
与(oraclecommon){
eval(fororacle =+ dbcommon);
}
forsqlserver();
ForOracle();
脚本>
我们可以把它看作模板方法的简单模式吗哈哈 u3002we也可以称这一语境使用eval和转变职能。
毕竟,eval是在一般情况下很少使用,我们完全可以避免。
最简单的例子之一:
复制代码代码如下所示:
eval(警报(1 + 1));
脚本>
将字符串解释为js代码并执行它非常简单,并弹出2。
当然,上面的例子只是一个玩具,和在现实中没有人会上当使用它。我认为每个人最基本的eval函数应使用DOM,比如我们DIV1,格式,div3,然后在document.getelementbyid ID,我们没有办法得到的,所以最简单的方法是在for循环中,使用eval拼接这样的程序。例如,这种情况。
复制代码代码如下所示:
对于(var循环= 1;循环< 10;循环+){
eval(document.getelementbyid(div+环).innerHTML =123);
}
脚本>
最基本的使用方法后,我们仍然认为功能是不够的,如果这个功能只有很少使用,太无聊了。所以我们就把eval()函数的一个点。
让我们用eval的范围开始,看看这样的功能:
复制代码代码如下所示:
eval(var i = 3 );
警报(一);
脚本>
代码非常简单,结果可以是3,然后比较代码:
复制代码代码如下所示:
var测试=函数(){()
eval(var i = 3 );
警报(一);
}
测试();
警报(一);
脚本>
结果是前3个,然后是未定义的。
也就是说:,eval代码()函数动态执行不创建一个新的范围,它的代码在当前范围内执行。所以说,eval()函数,也可以使用这个说法,和其他的电流范围对象。
在伊江,一个支持这样一个非常相似的一种被称为execscript eval函数()(),我们可以写一段简单的代码。
复制代码代码如下所示:
var测试=函数(){()
execscript(var i = 3 );
警报(一);
}
测试();
警报(一);
脚本>
结果表明,2的3,这表明该execscript功能特点。首先,它类似于eval,这可以解释字符串插入JS代码并执行,但其范围不是当前的范围,但全球范围。当我们把上面的代码在Firefox和谷歌浏览器,尝试找到代码在Firefox上execscript无效,所以这也说明了一个问题。execscript浏览器兼容性问题。
所以这是一个我们如何把这两个功能的优势放在一起的问题,也就是说,全球浏览器的兼容性,互联网搜索,以及他们自己的总结:
复制代码代码如下所示:
无功strongeval =功能(代码){
如果(window.navigator.useragent.indexof(MSIE)> = 1){
execscript(代码);
}
如果(window.navigator.useragent.indexof(火狐)> = 1){
Window.eval(代码);
}
{其他
execscript(代码);
}
};
var测试=函数(){()
strongeval(var i = 3 );
}
测试();
警报(一);
脚本>
这可以与FF和IE完全兼容,其基本代码是eval和window.eval在FF不是等价的,这是一个奇妙的东西。
此外,我们还可以使用eval +实施卖淫的技巧。
在一般意义上,我们可以编写这样的代码:
复制代码代码如下所示:
var obj =函数(){()
这个= 1;
b = 2;
这个,C=5;
this.fun =函数(){
这个;
}
};
var o =新的对象();
O.fun();
警报(O.C);
左右:
复制代码代码如下所示:
var obj = { {
甲:1,
乙:2,
丙:5,
乐趣:函数(){
这个;
}
}
或者用这种方法:
复制代码代码如下所示:
var obj =函数(){()
这个= 1;
b = 2;
这个,C=5;
};
obj.prototype.fun =函数(){
这个;
}
var o =新的对象();
O.fun();
警报(O.C);
不管怎样,你对这样的事感到厌烦吗让我们选择一种选择,至少在感官上是舒服的。
复制代码代码如下所示:
无功funtemp =函数(){()
C = A + B;
}
var obj = { {
甲:1,
乙:2,
C:5
};
VaR的乐趣;
与(obj){
eval(快乐=+ funtemp);
}
(有趣);
警报(obj。C);
脚本>
这是很勉强的,那么好,我们不谈什么舒服不舒服。让我们讨论这种情况。
复制代码代码如下所示:
Var DBCommon =函数(){()
警告(1);CreateConnection();
警告(2);OpenConnection();
警告(3);CreateCommand();
警告(4);ExcuteCommand();
警告(5);密切相关();
}
Var SQLServerCommon = { {
CreateConnection:函数(){ alert(建立SQL Server连接)};}
打开一个网络连接:(){ alert(功能打开SQL Server连接)};},
CreateCommand:(功能){ alert(创建SQL Server的命令);},
excutecommand:函数(){ alert(执行的DSQL服务器命令)},
紧密联系:函数(){ alert(关闭SQL Server连接)};}
};
Var OracleCommon = { {
CreateConnection:(功能){ alert(建立连接Oracle);},
打开一个网络连接功能(){ alert(:开放aoracle连接);},
CreateCommand:(功能){ alert(创建命令);},
excutecommand:函数(){ alert(执行doracle命令)};}
紧密联系:函数(){ alert(关闭Oracle连接);}
};
与(sqlservercommon){
eval(forsqlserver =+ dbcommon);
}
与(oraclecommon){
eval(fororacle =+ dbcommon);
}
forsqlserver();
ForOracle();
脚本>
我们可以把它看作模板方法的简单模式吗哈哈 u3002we也可以称这一语境使用eval和转变职能。
毕竟,eval是在一般情况下很少使用,我们完全可以避免。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。