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 相关文章推荐
html+javascript实现可拖动可提交的弹出层对话框效果
Aug 05 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
Dec 23 Javascript
Jquery中offset()和position()的区别分析
Feb 05 Javascript
JavaScript高级教程5.6之基本包装类型(详细)
Nov 23 Javascript
使用jQuery Rotare实现微信大转盘抽奖功能
Jun 20 Javascript
JavaScript构建自己的对象示例
Nov 29 Javascript
jQuery快速实现商品数量加减的方法
Feb 06 Javascript
vue.js 使用axios实现下载功能的示例
Mar 05 Javascript
在vue项目中引入highcharts图表的方法
Jan 21 Javascript
JavaScript格式化json和xml的方法示例
Jan 22 Javascript
BootStrap表单验证中的非Submit类型按钮点击时触发验证的坑
Sep 05 Javascript
微信小程序实现一张或多张图片上传(云开发)
Sep 25 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 $_SERVER当前完整url的写法
2009/11/12 PHP
浅析PHP原理之变量(Variables inside PHP)
2013/08/09 PHP
PHP中使用sleep造成mysql读取失败的案例和解决方法
2014/08/21 PHP
PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享
2014/09/27 PHP
php实现判断访问来路是否为搜索引擎机器人的方法
2015/04/15 PHP
PHP+redis实现添加处理投票的方法
2015/11/14 PHP
php解析xml 的四种简单方法(附实例)
2016/07/11 PHP
PHP批斗大会之缺失的异常详解
2019/07/09 PHP
jQuery DIV弹出效果实现代码
2009/07/03 Javascript
仅Firefox中链接A无法实现模拟点击以触发其默认行为
2011/07/31 Javascript
jQuery右键菜单contextMenu使用实例
2011/09/28 Javascript
javascript判断ie浏览器6/7版本加载不同样式表的实现代码
2011/12/26 Javascript
JavaScript等比例缩放图片控制超出范围的图片
2013/08/06 Javascript
Jquery实现搜索框提示功能示例代码
2013/08/13 Javascript
jQuery中trigger()方法用法实例
2015/01/19 Javascript
node.js中module.exports与exports用法上的区别
2016/09/02 Javascript
基于AngularJS前端云组件最佳实践
2016/10/20 Javascript
js实现网页定位导航功能
2017/03/07 Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
2018/05/15 Javascript
vue单页开发父子组件传值思路详解
2018/05/18 Javascript
Vue 配合eiement动态路由,权限验证的方法
2018/09/26 Javascript
微信小程序实现动态显示和隐藏某个控件功能示例
2018/12/14 Javascript
layui layer select 选择被遮挡的解决方法
2019/09/21 Javascript
webpack是如何实现模块化加载的方法
2019/11/06 Javascript
JS实现分页导航效果
2020/02/19 Javascript
python的格式化输出(format,%)实例详解
2018/06/01 Python
python利用opencv实现SIFT特征提取与匹配
2020/03/05 Python
解决python中0x80072ee2错误的方法
2020/07/19 Python
优秀毕业生自荐信范文
2014/01/01 职场文书
学生会主席就职演讲稿
2014/01/14 职场文书
九九重阳节标语
2014/10/07 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
2014年评职称工作总结
2014/11/20 职场文书
开学第一周总结
2015/07/16 职场文书
企业文化学习心得体会
2016/01/21 职场文书
什么是求职信?求职信应包含哪些内容?
2019/08/14 职场文书