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 相关文章推荐
Jquery 1.42 checkbox 全选和反选代码
Mar 27 Javascript
node.js WEB开发中图片验证码的实现方法
Jun 03 Javascript
js实现文章文字大小字号功能完整实例
Nov 01 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
May 20 Javascript
JavaScript中length属性的使用方法
Jun 05 Javascript
jquery拖拽效果完整实例(附demo源码下载)
Jan 14 Javascript
Vue.js组件tabs实现选项卡切换效果
Dec 01 Javascript
微信小程序 支付功能实现PHP实例详解
May 12 Javascript
快速解决angularJS中用post方法时后台拿不到值的问题
Aug 14 Javascript
详解关于webpack多入口热加载很慢的原因
Apr 24 Javascript
vue+element tabs选项卡分页效果
Jun 29 Javascript
简单了解three.js 着色器材质
Aug 03 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
在同一窗体中使用PHP来处理多个提交任务
2006/10/09 PHP
ThinkPHP 3.2 数据分页代码分享
2014/10/14 PHP
php基于dom实现读取图书xml格式数据的方法
2017/02/03 PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
2017/10/11 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
数理公式,也可以这么唯美
2021/03/10 无线电
国外Lightbox v2.03.3 最新版 下载
2007/10/17 Javascript
基于jQuery的前端数据通用验证库
2011/08/08 Javascript
js 实现的可折叠留言板(附源码下载)
2014/07/01 Javascript
jQuery元素的隐藏与显示实例
2015/01/20 Javascript
详解JavaScript的策略模式编程
2015/06/24 Javascript
Vue.js 表单校验插件
2016/08/14 Javascript
JS+CSS3制作炫酷的弹窗效果
2016/11/08 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
js, jQuery实现全选、反选功能
2017/03/08 Javascript
React-Native做一个文本输入框组件的实现代码
2017/08/10 Javascript
jQuery实现图片上传预览效果功能完整实例【测试可用】
2018/05/28 jQuery
vue基于element的区间选择组件
2018/09/07 Javascript
JavaScript实现多球运动效果
2020/09/07 Javascript
Jquery+javascript实现支付网页数字键盘
2020/12/21 jQuery
Python执行时间的计算方法小结
2017/03/17 Python
在centos7中分布式部署pyspider
2017/05/03 Python
Python开发虚拟环境使用virtualenvwrapper的搭建步骤教程图解
2018/09/19 Python
Python vtk读取并显示dicom文件示例
2020/01/13 Python
python中复数的共轭复数知识点总结
2020/12/06 Python
CSS3教程(4):网页边框和网页文字阴影
2009/04/02 HTML / CSS
前端实现打印图像功能
2019/08/27 HTML / CSS
英国门销售网站:Green Tree Doors
2020/01/07 全球购物
MIRTA官网:手工包,100%意大利制造
2020/02/11 全球购物
网络维护管理员的自我评价分享
2013/11/11 职场文书
职称评定个人总结
2015/03/05 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
2016年党支部公开承诺书
2016/03/25 职场文书
对Keras自带Loss Function的深入研究
2021/05/25 Python
python中urllib包的网络请求教程
2022/04/19 Python