首页 相关文章 如何在JavaScript函数内执行全局代码

如何在JavaScript函数内执行全局代码

  先来说eval的用法,内容比较简单,熟悉的可以跳过。

  eval函数接收一个参数s,如果s不是字符串,则直接返回s。否则执行s语句。如果s语句执行结果是一个值,则返回此值,否则返回undefined。

  需要特别注意的是对象声明语法“{}”并不能返回一个值,需要用括号括起来才会返回值,简单示例如下:

var code1='"a" + 2'; //表达式
var code2='{a:2}'; //语句
alert(eval(code1)); //-'a2'
alert(eval(code2)); //-undefined
alert(eval('(' + code2 + ')')); //-[object Object]

  可以看到,对于对象声明语句来说,仅仅是执行,并不能返回值。为了返回常用的“{}”这样的对象声明语句,必须用括号括住,以将其转换为表达式,才能返回其值。这也是使用JSON来进行Ajax开发的基本原理之一。在例子中可以清楚的看到,第二个alert语句输出的是undefined,而第三个加了括号后输出的是语...[ 查看全文 ]

2016-02-19 标签:

如何在JavaScript函数内执行全局代码的相关文章

手机页面
收藏网站 回到头部