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 相关文章推荐
点击隐藏页面左栏或右栏实现js代码
Apr 01 Javascript
jquerymobile局部渲染的各种刷新方法小结
Mar 05 Javascript
用js设置下拉框为只读的小技巧
Apr 10 Javascript
解决jquery版本冲突的有效方法
Sep 02 Javascript
运用js教你轻松制作html音乐播放器
Apr 17 Javascript
Vue 2.5 Level E 发布了: 新功能特性一览
Oct 24 Javascript
js中call()和apply()改变指针问题的讲解
Jan 17 Javascript
JavaScript中将值转换为字符串的五种方法总结
Jun 06 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
Jul 19 Javascript
layui的布局和表格的渲染以及动态生成表格的方法
Sep 18 Javascript
javascript设计模式 ? 外观模式原理与用法实例分析
Apr 15 Javascript
关于JS中的作用域中的问题思考分享
Apr 06 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生成文件
2007/01/15 PHP
实现PHP多线程异步请求的3种方法
2014/01/17 PHP
destoon之一键登录设置
2014/06/21 PHP
PHP获取一年中每个星期的开始和结束日期的方法
2015/02/12 PHP
php中使用gd库实现下载网页中所有图片
2015/05/12 PHP
PHP文件下载实例代码浅析
2016/08/17 PHP
PHP版单点登陆实现方案的实例
2016/11/17 PHP
Firefox outerHTML实现代码
2009/06/04 Javascript
Javascript 刷新全集常用代码
2009/11/22 Javascript
jquery实现带渐变淡入淡出并向右依次展开的多级菜单效果实例
2015/08/22 Javascript
js实现横向伸展开的二级导航菜单代码
2015/08/28 Javascript
Nodejs实现多房间简易聊天室功能
2017/06/20 NodeJs
关于Vue.nextTick()的正确使用方法浅析
2017/08/25 Javascript
使用Node.js实现ORM的一种思路详解(图文)
2017/10/24 Javascript
JS二分查找算法详解
2017/11/01 Javascript
webstorm添加*.vue文件支持
2018/05/08 Javascript
webpack4.0 入门实践教程
2018/10/08 Javascript
python控制台中实现进度条功能
2015/11/10 Python
最近Python有点火? 给你7个学习它的理由!
2017/06/26 Python
django实现用户登陆功能详解
2017/12/11 Python
python决策树之CART分类回归树详解
2017/12/20 Python
Python中生成器和迭代器的区别详解
2018/02/10 Python
PyQt5实现QLineEdit添加clicked信号的方法
2019/06/25 Python
解决Django 在ForeignKey中出现 non-nullable field错误的问题
2019/08/06 Python
python读取csv文件指定行的2种方法详解
2020/02/13 Python
python编写俄罗斯方块
2020/03/13 Python
Html5跳转到APP指定页面的实现
2020/01/14 HTML / CSS
英国复古和经典球衣网站:Vintage Football Shirts
2018/10/05 全球购物
学生喝酒检讨书
2014/02/06 职场文书
开学典礼主持词
2014/03/19 职场文书
安踏广告词改编版
2014/03/21 职场文书
心灵点滴观后感
2015/06/02 职场文书
新郎新娘致辞
2015/07/31 职场文书
学习党章心得体会2016
2016/01/15 职场文书
56句经典英文座右铭
2019/08/09 职场文书
《堡垒之夜》联动《刺客信条》 4月7日正式上线
2022/04/06 其他游戏