JS如何定义用字符串拼接的变量


Posted in Javascript onJuly 11, 2020

今天在写js的时候碰到了难题,我又一个页面需要生成很多的变量。但是变量的名称是根据参数的不同而区分的。

例如可能需要生成 date_1,date_2,datet_3... (后面的数字是根据参数来的)。 所以我的函数名 应该由 var name = "test_"+num; 生成函数名 但这问题就来了。

1可以使用 window[name] = " " 这种方式来定义变量:

所以 var "test_"+num = 100; 这中肯定是错误的。后来问了大哥后才知道。可以使用 window[name] = 100 这种方式来定义变量。看代码

function create_variable(num){
    var name = "test_"+num;  //生成函数名
    window[name] = 100;
    window['name'] = 200;  //注意看中括号里的内容加引号和不加引号的区别
  }
  create_variable(2);
  alert(test_2); // 100;
  alert(name); //200;

总结 window用中括号的方式定义 变量时,中括号里的内容应该是字符串。如果是一个变量的话,他就会解析这个变量找到具体的值。

他和点语法区别就是这里,点语法后面跟的内容就是要定义的变量名。而不会在解析他是否为变量之类的。例如

var name = "test"
  window.name = 200
  alert(name); // 200
  alert(test);  ReferenceError: test is not defined

2用对象的形式

var test = {};
  for(var i = 0; i < 3; i++){
    test['test_'+i]='我是字符串'+i;
 
    console.log(test['test_'+i]); //输出:我是字符串0, 我是字符串1, 我是字符串2
  }
console.log(test_0); //输出:ReferenceError: test_0 is not defined
console.log(test['test_0']); //输出:我是字符串0

3用数组的形式

var test = [];
  for(var i = 0; i < 3; i++){
    test[i]='我是字符串'+i;
    console.log(test[i]); //输出:我是字符串0, 我是字符串1, 我是字符串2
  }
console.log(test[0]); //输出:我是字符串0

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一段实时更新的时间代码
Jul 07 Javascript
关于js new Date() 出现NaN 的分析
Oct 23 Javascript
jQuery表格插件ParamQuery简单使用方法示例
Dec 05 Javascript
jquery获取对象的方法足以应付常见的各种类型的对象
May 14 Javascript
JS中实现简单Formatter函数示例代码
Aug 19 Javascript
BootStrap智能表单实战系列(七)验证的支持
Jun 13 Javascript
浅谈js常用内置方法和对象
Sep 24 Javascript
教你一步步用jQyery实现轮播器
Dec 18 Javascript
微信小程序商城项目之侧栏分类效果(1)
Apr 17 Javascript
js禁止浏览器的回退事件
Apr 20 Javascript
javascript简单写的判断电话号码实例
May 24 Javascript
Vue路由history模式解决404问题的几种方法
Sep 29 Javascript
基于原生js实现判断元素是否有指定class名
Jul 11 #Javascript
详解在IDEA中将Echarts引入web两种方式(使用js文件和maven的依赖导入)
Jul 11 #Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
Jul 11 #Javascript
uniapp,微信小程序中使用 MQTT的问题
Jul 11 #Javascript
VSCode 配置uni-app的方法
Jul 11 #Javascript
深入解析微信小程序开发中遇到的几个小问题
Jul 11 #Javascript
微信小程序上传帖子的实例代码(含有文字图片的微信验证)
Jul 11 #Javascript
You might like
自制短波长线天线频率预选器 - 成功消除B2K之流的镜像
2021/03/02 无线电
ThinkPHP中实例Model方法的区别说明
2010/08/21 PHP
解析web文件操作常见安全漏洞(目录、文件名检测漏洞)
2013/06/29 PHP
是 WordPress 让 PHP 更流行了 而不是框架
2016/02/03 PHP
JS 实现完美include载入实现代码
2010/08/05 Javascript
JavaScript将相对地址转换为绝对地址示例代码
2013/07/19 Javascript
Angular实现form自动布局
2016/01/28 Javascript
JavaScript数值千分位格式化的两种简单实现方法
2016/08/01 Javascript
JavaScript 实现的checkbox经典实例分享
2016/10/16 Javascript
浅谈DOM的操作以及性能优化问题-重绘重排
2017/01/08 Javascript
js实现日历的简单算法
2017/01/24 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
2017/04/01 Javascript
Python迭代器和生成器介绍
2015/03/06 Python
Python的Django框架中if标签的相关使用
2015/07/15 Python
用Python写冒泡排序代码
2016/04/12 Python
Python制作Windows系统服务
2017/03/25 Python
python实现随机调用一个浏览器打开网页
2018/04/21 Python
浅谈Python的list中的选取范围
2018/11/12 Python
python 随机打乱 图片和对应的标签方法
2018/12/14 Python
Python功能点实现:函数级/代码块级计时器
2019/01/02 Python
pyinstaller打包多个py文件和去除cmd黑框的方法
2019/06/21 Python
python tkinter之 复选、文本、下拉的实现
2020/03/04 Python
Pytorch mask-rcnn 实现细节分享
2020/06/24 Python
Python map及filter函数使用方法解析
2020/08/06 Python
python 发送get请求接口详解
2020/11/17 Python
python unichr函数知识点总结
2020/12/16 Python
HTML5 Canvas渐进填充与透明实现图像的Mask效果
2013/07/11 HTML / CSS
租租车:国际租车、美国租车、欧洲租车、特价预订国外租车(中文服务)
2018/03/28 全球购物
blueseventy官网:铁人三项和比赛泳衣
2021/02/06 全球购物
求职简历自我评价范例
2014/03/12 职场文书
园林技术专业求职信
2014/07/28 职场文书
党员示范岗材料
2014/12/19 职场文书
2016春季运动会前导词
2015/11/25 职场文书
创业计划书之酒厂
2019/10/14 职场文书
sql查询结果列拼接成逗号分隔的字符串方法
2021/05/25 SQL Server
Django框架中模型的用法
2022/06/10 Python