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

 更新时间:2020年07月11日 14:55:44   作者:小猿笔记  
这篇文章主要介绍了JS如何定义用字符串拼接的变量,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

今天在写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实现贪吃蛇小游戏

    javascript实现贪吃蛇小游戏

    这篇文章主要为大家详细介绍了javascript实现贪吃蛇小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • Java 生成随机字符的示例代码

    Java 生成随机字符的示例代码

    这篇文章主要介绍了Java 生成随机字符的示例代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • Bootstrap免费字体和图标网站(值得收藏)

    Bootstrap免费字体和图标网站(值得收藏)

    在这篇内容中,我们把这套框架上的免费字体图标做了个整合(当然,以后还会不断的更新)。大家对bootstrap免费字体图标有需要的话,可以参考本教程
    2017-03-03
  • 在JavaScript 中按字母排序之如何在 JS 中按名称排序

    在JavaScript 中按字母排序之如何在 JS 中按名称排序

    有时你可能有一个单词数组,你想按字母顺序(从 a-z)对每个单词进行排序,或者你可能有一个包含用户信息(包括名字)的对象数组,例如,你想按照用户的名字来排序,接下来通过本文给大家介绍在JavaScript 中按字母排序之如何在 JS 中按名称排序,需要的朋友可以参考下
    2023-09-09
  • js enter键激发事件实例代码

    js enter键激发事件实例代码

    下面小编就为大家带来一篇js enter键激发事件实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 前端处理.xlsx文件流并触发下载的完整实现方案

    前端处理.xlsx文件流并触发下载的完整实现方案

    本文详细介绍了前端处理.xlsx文件流并触发下载的完整实现方案,包括核心实现流程、关键增强功能、常见问题处理以及最佳实践建议,方案推荐使用FileSaver.js,适用于中型以上项目,需要的朋友可以参考下
    2025-03-03
  • 详解webpack自动生成html页面

    详解webpack自动生成html页面

    本篇文章主要介绍了详解webpack自动生成页面,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • JS实现的四级密码强度检测功能示例

    JS实现的四级密码强度检测功能示例

    这篇文章主要介绍了JS实现的四级密码强度检测功能,具有实时检测输入密码强度的功能,涉及javascript针对字符串的正则判定相关操作技巧,需要的朋友可以参考下
    2017-05-05
  • javascript框架设计读书笔记之模块加载系统

    javascript框架设计读书笔记之模块加载系统

    本文是司徒正美的《javascript框架设计》的第二章模块加载系统的读书笔记,根据自己的理解,简要的跟大家讲述了本章的主要内容,方便大家更好的学习。
    2014-12-12
  • JS控制只能输入数字并且最多允许小数点两位

    JS控制只能输入数字并且最多允许小数点两位

    这篇文章主要介绍了JS控制只能输入数字并且最多允许小数点两位,本文给大家提到js如何限制input输入框只能输入数字问题,需要的朋友可以参考下
    2019-11-11

最新评论