JS使用eval()动态创建变量的方法


Posted in Javascript onJune 03, 2016

本文实例讲述了JS使用eval()动态创建变量的方法。分享给大家供大家参考,具体如下:

一、什么是eval()函数?

eval_r()函数可计算某个字符串,并执行其中的的 JavaScript 代码。

二、如何动态定义变量?

既然eval()能够计算字符串,何不将定义变量的写法转换为字符串,然后放入eval_r()函数内进行执行,形如:

var defineStr = "var number_"+i.toString();
eval_r(defineStr);

这样就定义了一个变量,你可以设置debugger 跟踪调试一下看看number变量是否定义成功。

倘若i值为1,那么动态的变量就为number_1

后续一样可以通过这种形式为其赋值:

eval_r("number_"+i.toString()+" = 120;");

这样就为其变量number_1赋值为120了。

但是这里绝对不能够这样去写:

eval_r("number_"+i.toString()) = 120

这样写是存在于法错误的。

以上这种写法在IE内却有些行不通,得需要使用executeScript(string)来执行,判断如下:

if(window.executeScript)
{
//IE浏览器
window.executeScript(defineStr);
}else
{
//Chrome、Firefox等非IE浏览器
window.eval_r(defineStr);
}

更多关于JavaScript相关内容可查看本站专题:《JavaScript中ajax操作技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript一点特殊用法
May 28 Javascript
让网页根据不同IE版本显示不同的内容
Feb 08 Javascript
jQuery插件开发基础简单介绍
Jan 07 Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
Nov 22 Javascript
JS遍历对象属性的方法示例
Jan 10 Javascript
基于JavaScript实现复选框的全选和取消全选
Feb 09 Javascript
jquery点赞功能实现代码 点个赞吧!
May 29 jQuery
angularJS 发起$http.post和$http.get请求的实现方法
May 18 Javascript
js实现日期显示的一些操作(实例讲解)
Jul 27 Javascript
浅谈js中的this问题
Aug 31 Javascript
vue.js实现简单轮播图效果
Oct 10 Javascript
Express结合Webpack的全栈自动刷新
May 23 Javascript
jQuery插件编写步骤详解
Jun 03 #Javascript
jQuery ajax全局函数处理session过期后的ajax跳转问题
Jun 03 #Javascript
JSON字符串转换JSONObject和JSONArray的方法
Jun 03 #Javascript
JS判断字符串变量是否含有某个字串的实现方法
Jun 03 #Javascript
JavaScript闭包实例详解
Jun 03 #Javascript
js判断某个字符出现的次数的简单实例
Jun 03 #Javascript
JS中判断字符串中出现次数最多的字符及出现的次数的简单实例
Jun 03 #Javascript
You might like
PHP 命名空间实例说明
2011/01/27 PHP
php中日期加减法运算实现代码
2011/12/08 PHP
php微信开发之上传临时素材
2016/06/24 PHP
PHP实现的随机IP函数【国内IP段】
2016/07/20 PHP
php获取文件名称和扩展名的方法
2017/02/07 PHP
PHP 实现重载
2021/03/09 PHP
[原创]来自ImageSee官方 JavaScript图片浏览器
2008/01/16 Javascript
扩展JS Date对象时间格式化功能的小例子
2013/12/02 Javascript
对table和ul实现js分页示例分享
2014/02/24 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
js命名空间写法示例
2015/12/18 Javascript
AngularJS中的Promise详细介绍及实例代码
2016/12/13 Javascript
JS实现全屏的四种写法
2016/12/30 Javascript
bootstrapValidator bootstrap-select验证不可用的解决办法
2017/01/11 Javascript
给vue项目添加ESLint的详细步骤
2017/09/29 Javascript
javascript实现小型区块链功能
2019/04/03 Javascript
3分钟了解vue数据劫持的原理实现
2019/05/01 Javascript
浅谈一个webpack构建速度优化误区
2019/06/24 Javascript
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
ElementUI Tree 树形控件的使用并给节点添加图标
2020/02/27 Javascript
[01:03:33]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python base64编码解码实例
2015/06/21 Python
requests和lxml实现爬虫的方法
2017/06/11 Python
Python实现提取XML内容并保存到Excel中的方法
2018/09/01 Python
pycharm中成功运行图片的配置教程
2018/10/28 Python
python画图--输出指定像素点的颜色值方法
2019/07/03 Python
浅谈python多进程共享变量Value的使用tips
2019/07/16 Python
python批量替换文件名中的共同字符实例
2020/03/05 Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
2020/03/09 Python
迅雷Cued工作心得体会
2014/01/27 职场文书
酒店员工职业生涯规划
2014/02/25 职场文书
食品安全汇报材料
2014/08/18 职场文书
高中生第一学年自我鉴定2015
2014/09/28 职场文书
会议邀请函
2015/01/30 职场文书
钱学森电影观后感
2015/06/04 职场文书
企业团队精神心得体会
2016/01/19 职场文书