javascript - 如何使用文本输入中的字符串变量来引用同名的数组

标签 javascript

我的 JavaScript 文件中有许多数组 我想在计算中使用的数组是:

 var planets_num = []

如果我想使用某个数组,我只需使用:

  arraytouse = planets_num

我想做的是使用输入:

 <input type="text" id="mynewtext" value="Enter array name to use">

然后是一个获取“mynewtext”值的函数:

 function getnewform1 () {
 newtext=document.getElementById('mynewtext').value
 . . .
 }

假设 var newtext = "abc" 然后我想要:

 abc = planets_num

即数组 abc 中的值将被放置在 Planets_num 数组中

希望这是有道理的

TIA

最佳答案

如果planets_num在全局范围内,您也可以这样引用它:

arraytouse = window['planets_num'];

对象上的变量也是该对象上同名的可索引值。对于全局范围变量,它们位于 window 对象上。

所以你可以这样做:

arraytouse = window[document.getElementById('mynewtext').value];

如果数组不在全局范围内,那么您可以将它们组织为某个对象的属性,并以相同的方式引用该对象:

arraytouse = objectOfArrays[document.getElementById('mynewtext').value];

关于javascript - 如何使用文本输入中的字符串变量来引用同名的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19670481/

相关文章:

javascript - 使用javascript加载knockoutjs组件

javascript - 如何获取对表格内文本区域的引用?

javascript - 使用 sql.js 将 CSV 文件导入 SQLite

javascript - 下拉菜单绑定(bind)并从剩余下拉菜单中删除选项

javascript - 使用d3js在半圆圆环图中从右到左绘制进度路径

javascript - 无法获取 Firefox 的 html 元素的高度和宽度

javascript - 提交表单时忽略基本 href,不使用 Javascript

javascript - jquery every inside every 只影响最后一个元素

javascript - jade/pug 中另一个元素内带有 id 的元素

javascript - 使用 javascript 向 html 表添加新列