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代码
Aug 29 Javascript
jquery ajax 同步异步的执行 return值不能取得的解决方案
Jan 08 Javascript
javascript圆盘抽奖程序实现原理和完整代码例子
Jun 03 Javascript
手写的一个兼容各种浏览器的javascript getStyle函数(获取元素的样式)
Jun 06 Javascript
js实现右下角提示框的方法
Feb 03 Javascript
jQuery实现首页顶部可伸缩广告特效代码
Apr 15 Javascript
基于JQuery实现分隔条的功能
Jun 17 Javascript
微信小程序 检查接口状态实例详解
Jun 23 Javascript
简化vuex的状态管理方案的方法
Jun 02 Javascript
记录一篇关于redux-saga的基本使用过程
Aug 18 Javascript
简单谈谈javascript高级特性
Sep 04 Javascript
vue-cli+iview项目打包上线之后图标不显示问题及解决方法
Oct 16 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中文件上传的一个问题
2010/09/04 PHP
PHP中模拟处理HTTP PUT请求的例子
2014/07/22 PHP
php实现的支持imagemagick及gd库两种处理的缩略图生成类
2014/09/23 PHP
利用php获得flv视频长度的实例代码
2017/10/26 PHP
使用PHP访问RabbitMQ消息队列的方法示例
2018/06/06 PHP
php正则表达式使用方法整理集合
2020/01/31 PHP
Javascript的闭包
2009/12/31 Javascript
详解jquery uploadify 上传文件
2013/11/09 Javascript
教你用AngularJS框架一行JS代码实现控件验证效果
2014/06/23 Javascript
Javascript的表单与验证-非空验证
2016/03/18 Javascript
动态加载js、css的实例代码
2016/05/26 Javascript
AngularJS 模块详解及简单实例
2016/07/28 Javascript
js友好的时间返回函数
2016/08/24 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
2017/09/02 Javascript
async/await地狱该如何避免详解
2018/05/10 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
js删除对象/数组中null、undefined、空对象及空数组方法示例
2018/11/14 Javascript
vue cli 3.x 项目部署到 github pages的方法
2019/04/17 Javascript
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
[01:05:07]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第一场2月1日
2021/03/11 DOTA
python爬虫框架scrapy实现模拟登录操作示例
2018/08/02 Python
Python中一般处理中文的几种方法
2019/03/06 Python
Python hashlib模块实例使用详解
2019/12/24 Python
简单了解pytest测试框架setup和tearDown
2020/04/14 Python
python爬虫快速响应服务器的做法
2020/11/24 Python
CSS3模拟动画下拉菜单效果
2017/04/12 HTML / CSS
详解CSS3 rem(设置字体大小) 教程
2017/11/21 HTML / CSS
HTML5引入的新数组TypedArray介绍
2012/12/24 HTML / CSS
Wallis官网:英国女装零售商
2020/01/21 全球购物
计算机本科生自荐信
2013/10/15 职场文书
《骆驼和羊》教学反思
2014/02/27 职场文书
中专毕业生的自荐书
2014/07/01 职场文书
民政局标准版离婚协议书
2014/12/01 职场文书
2014年客服工作总结与计划
2014/12/09 职场文书
回复函格式及范文
2015/07/14 职场文书
MybatisPlus代码生成器的使用方法详解
2021/06/13 Java/Android