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 相关文章推荐
获取css样式表内样式的js函数currentStyle(IE),defaultView(FF)
Feb 14 Javascript
javascript (用setTimeout而非setInterval)
Dec 28 Javascript
jQuery 借助插件Lavalamp实现导航条动态美化效果
Sep 27 Javascript
什么是Node.js?Node.js详细介绍
Jun 01 Javascript
jQuery弹出框代码封装DialogHelper
Jan 30 Javascript
使用javascript提交form表单方法汇总
Jun 25 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
Feb 02 Javascript
jQuery Validate 数组 全部验证问题
Jan 12 Javascript
JS自定义滚动条效果简单实现代码
Oct 27 Javascript
vue里面使用mui的弹出日期选择插件实例
Sep 16 Javascript
jQuery使用each遍历循环的方法
Sep 19 jQuery
解决在Vue中使用axios用form表单出现的问题
Oct 30 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
写一个用户在线显示的程序
2006/10/09 PHP
Uncaught exception com_exception with message Failed to create COM object
2012/01/11 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
2014/03/17 PHP
php判断表是否存在的方法
2015/06/18 PHP
网页的分页下标生成代码(PHP后端方法)
2016/02/03 PHP
腾讯的ip接口 方便获取当前用户的ip地理位置
2010/11/25 Javascript
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
jQuery getJSON()+.ashx 实现分页(改进版)
2013/03/28 Javascript
javascript中全局对象的parseInt()方法使用介绍
2013/12/19 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
jquery文档操作wrap()方法实例简述
2015/01/10 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
2016/06/21 Javascript
微信小程序 两种为对象属性赋值的方式详解
2017/02/23 Javascript
基于jquery实现二级联动效果
2017/03/30 jQuery
判断颜色是否合法的正则表达式(详解)
2017/05/03 Javascript
详解使用nodeJs安装Vue-cli
2017/05/17 NodeJs
基于Cookie常用操作以及属性介绍
2017/09/07 Javascript
Vue实现导出excel表格功能
2018/03/30 Javascript
微信小程序中进行地图导航功能的实现方法
2018/06/29 Javascript
详解webpack-dev-server使用方法
2018/09/14 Javascript
JavaScript面试技巧之数组的一些不low操作
2019/03/22 Javascript
[01:00:54]TI4正赛第二日开场
2014/07/20 DOTA
Djang中静态文件配置方法
2015/07/30 Python
Python 3中的yield from语法详解
2017/01/18 Python
python如何查看微信消息撤回
2018/11/27 Python
Python爬虫实现“盗取”微信好友信息的方法分析
2019/09/16 Python
python实现通过队列完成进程间的多任务功能示例
2019/10/28 Python
Python 脚本拉取 Docker 镜像问题
2019/11/10 Python
Python通过递归函数输出嵌套列表元素
2020/10/15 Python
CSS3实现可爱的小黄人动画
2016/07/11 HTML / CSS
在html页面中取得session中的值的方法
2020/08/11 HTML / CSS
服装销售人员求职自我评价
2013/09/26 职场文书
快餐公司创业计划书
2014/04/29 职场文书
干部作风建设心得体会
2014/10/22 职场文书
大学生年度个人总结
2015/02/15 职场文书