作者:来日方长吗_Xcc | 来源:互联网 | 2023-05-17 11:55
javascript里面eval表示的是什么函数呀?eval可以将字符串生成语句执行,和SQL的exec(类似。eval的使用场合是什么呢?有时候我们预先不知道要执行什么语句,只有
Javascript 里面eval表示的是什么函数呀?
eval可以将字符串生成语句执行,和SQL的exec()类似。 eval的使用场合是什么呢?有时候我们预先不知道要执行什么语句,只有当条件和参数给时才知道执行什么语句,这时候eval就派上用场了。
举个例子: 我们要做一个function(),功能是输入网页中两个个对象的名称,然后程序就将这两个对象的值联接起来输出。
function output(a,b) { var tmpa,tmpb; tmpa=document.all.a.value; tmpb=document.all.b.value; document.write(tmpa+tmpb); } output('input1','input2'); 这样你执行的时候就会提示错误“document.all.a不是对象”以及“document.all.b不是对象”。原来Javascript把a和b当成对象名称了,怎样能让Javascript把a里面的值作为对象名称呢?这时候就要用eval了,把代码改成这样: function output(a,b) { var tmpa,tmpb; tmpa=eval("document.all."+a+".value"); tmpb=eval("document.all."+b+".value"); document.write(tmpa+tmpb); } output('input1','input2'); 这样Javascript就会先取出a,b的值,然后和前面的document.all.以及后面的.value组合运行,于是就可以 顺利取出input1和input2的值,我们的目的达到了。
Javascript中eval是什么函数的作用和缺陷?
eval方法是在运行时对脚本进行解释执行,而普通的Javascript会有一个预处理的过程。所以会有一些性能上的损失,但是通常通过一些手段能将这些性能损失降低到非常少。
不至于谈虎色变。
\x0d\x0a\x0d\x0a eval通常用在一些需要动态执行字符串,或将字符串转为Javascript对象的场景,比如将json字符串转为Javascript对象。\x0d\x0a\x0d\x0a至于eval容易被XSS攻击是属于想当然的说法吧,XSS攻击就是在你的页面上嵌入html或Javascript代码,我觉得与是否使用eval方法没有什么关系。
Javascript 中函数 function什么作用
js中用function来定义函数,起作用和Java中的方法类似。function functionname(){ 这里是要执行的代码}当调用该函数时,会执行函数内的代码。
可以在某事件发生时直接调用函数(比如当用户点击按钮时),并且可由 Javascript 在任何位置进行调用。