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 网页跳转的方法
Dec 24 Javascript
js类型检查实现代码
Oct 29 Javascript
利用谷歌地图API获取点与点的距离的js代码
Oct 11 Javascript
Event altKey,ctrlKey,shiftKey属性解析
Dec 18 Javascript
JavaScript中的包装对象介绍
Jan 27 Javascript
JavaScript中实现单体模式分享
Jan 29 Javascript
前端性能优化及技巧
May 06 Javascript
jQuery中JSONP的两种实现方式详解
Sep 26 Javascript
JavaScript实现隐藏省略文字效果的方法
Apr 27 Javascript
详解react-refetch的使用小例子
Feb 15 Javascript
layui监听select变化,以及设置radio选中的方法
Sep 24 Javascript
jQuery中event.target和this的区别详解
Aug 13 jQuery
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
实现分十页分向前十页向后十页的处理
2006/10/09 PHP
关于php 接口问题(php接口主要也就是运用curl,curl函数)
2013/07/01 PHP
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
用js实现计算加载页面所用的时间
2010/04/02 Javascript
只需20行代码就可以写出CSS覆盖率测试脚本
2013/04/24 Javascript
使用jQuery实现input数值增量和减量的方法
2015/01/24 Javascript
手动初始化Angular的模块与控制器
2016/12/26 Javascript
bootstrap警告框使用方法解析
2017/01/13 Javascript
addEventListener()与removeEventListener()解析
2017/04/20 Javascript
vue实现百度搜索下拉提示功能实例
2017/06/14 Javascript
简述jQuery Easyui一些用法
2017/08/01 jQuery
react native带索引的城市列表组件的实例代码
2017/08/08 Javascript
vue 使用自定义指令实现表单校验的方法
2018/08/28 Javascript
vue2 v-model/v-text 中使用过滤器的方法示例
2019/05/09 Javascript
微信小程序开发实现消息推送
2020/11/18 Javascript
让 babel webpack vue 配置文件支持智能提示的方法
2019/06/22 Javascript
JQuery实现ul中添加LI和删除指定的Li元素功能完整示例
2019/10/16 jQuery
Vue 使用beforeEach实现登录状态检查功能
2019/10/31 Javascript
vue中监听路由参数的变化及方法
2019/12/06 Javascript
JS自定义对象创建与简单使用方法示例
2020/01/15 Javascript
ElementUI 修改默认样式的几种办法(小结)
2020/07/29 Javascript
[01:17:55]VGJ.T vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/20 DOTA
[01:33]完美世界DOTA2联赛PWL S3 集锦第二期
2020/12/21 DOTA
python实现多线程采集的2个代码例子
2014/07/07 Python
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
Python实现重建二叉树的三种方法详解
2018/06/23 Python
用Django写天气预报查询网站
2018/10/21 Python
浅析PEP572: 海象运算符
2019/10/15 Python
浅谈sklearn中predict与predict_proba区别
2020/06/28 Python
详解python的super()的作用和原理
2020/10/29 Python
利用CSS3实现开门效果实例源码
2016/08/22 HTML / CSS
Beauty Expert美国/加拿大:购买奢侈美容产品
2018/12/05 全球购物
医学生实习自荐信
2013/10/01 职场文书
红色旅游心得体会
2014/09/03 职场文书
MySQL库表名大小写的选择
2021/06/05 MySQL