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 相关文章推荐
两个SUBMIT按钮,如何区分处理
Aug 22 Javascript
Javascript MD4
Dec 20 Javascript
鼠标焦点离开文本框时验证的js代码
Jul 19 Javascript
JavaScript使用concat连接数组的方法
Apr 06 Javascript
JavaScript Function函数类型介绍
Apr 08 Javascript
AngularJS入门教程之 XMLHttpRequest实例讲解
Jul 27 Javascript
jquery tmpl模板(实例讲解)
Sep 02 jQuery
微信小程序项目实践之九宫格实现及item跳转功能
Jul 19 Javascript
深入浅析ng-bootstrap 组件集中 tabset 组件的实现分析
Jul 19 Javascript
环形加载进度条封装(Vue插件版和原生js版)
Dec 04 Javascript
JS typeof fn === 'function' && fn()详解
Aug 22 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初学入门
2006/11/19 PHP
php 中文处理函数集合
2008/08/27 PHP
php生成xml简单实例代码
2009/12/16 PHP
mongo Table类文件 获取MongoCursor(游标)的实现方法分析
2013/07/01 PHP
php自动给网址加上链接的方法
2015/06/02 PHP
php中switch语句用法详解
2015/08/17 PHP
PHP入门教程之操作符与控制结构流程详解
2016/09/09 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
Javascript无参数和有参数类继承问题解决方法
2015/03/02 Javascript
jQuery寻找n以内完全数的方法
2015/06/24 Javascript
JavaScript 七大技巧(二)
2015/12/13 Javascript
Jquery实现简单的轮播效果(代码管用)
2016/03/14 Javascript
jQuery中的一些常见方法小结(推荐)
2016/06/13 Javascript
js 动态生成html 触发事件传参字符转义的实例
2017/02/14 Javascript
angularJs使用ng-repeat遍历后选中某一个的方法
2018/09/30 Javascript
微信小程序swiper组件实现抖音翻页切换视频功能的实例代码
2020/06/24 Javascript
vue中使用vue-pdf的方法详解
2020/09/05 Javascript
[02:18]《我与DAC》之工作人员:为了热爱DOTA2的玩家们
2018/03/28 DOTA
Python中return语句用法实例分析
2015/08/04 Python
PyQt 图解Qt Designer工具的使用方法
2019/08/06 Python
浅析PyTorch中nn.Linear的使用
2019/08/18 Python
基于python3抓取pinpoint应用信息入库
2020/01/08 Python
Pyspark读取parquet数据过程解析
2020/03/27 Python
python如何获得list或numpy数组中最大元素对应的索引
2020/11/16 Python
深入剖析HTML5 内联框架iFrame
2016/05/04 HTML / CSS
英国和世界各地预订便宜的酒店:LateRooms.com
2019/05/05 全球购物
毕业自我评价
2014/02/05 职场文书
房地产推广策划方案
2014/05/19 职场文书
医院保洁服务方案
2014/06/11 职场文书
订货会邀请函
2015/01/31 职场文书
办公用品质量保证书
2015/05/11 职场文书
2015年乡镇民政工作总结
2015/05/13 职场文书
闪闪的红星观后感
2015/06/08 职场文书
2016入党积极分子党课学习心得体会
2015/10/09 职场文书
《生物入侵者》教学反思
2016/02/16 职场文书
MySQL 逻辑备份 into outfile
2022/05/15 MySQL