Javascript 从给定变量创建一个集合。如何获取对象';s键';s值是否对应于给定变量的名称?

Javascript 从给定变量创建一个集合。如何获取对象';s键';s值是否对应于给定变量的名称?,javascript,data-structures,Javascript,Data Structures,我试图测试一组给定的变量。为了组织集合,我将变量作为键添加到对象中 我认为根据变量名动态添加键是正确的。如何确保每个键的值与原始给定数字的值相对应 例如: var num1 = 43; var num2 = 597; var num3 = 5662682; 我希望我的目标基本上是这样的: {num1: 43, num2: 597, num3: 5662682} 我试过: function makeObj () { var obj = {}; for (var i = 1; i <

我试图测试一组给定的变量。为了组织集合,我将变量作为键添加到对象中

我认为根据变量名动态添加键是正确的。如何确保每个键的值与原始给定数字的值相对应

例如:

var num1 = 43;
var num2 = 597;
var num3 = 5662682;
我希望我的目标基本上是这样的:

{num1: 43, num2: 597, num3: 5662682}
我试过:

function makeObj () {
  var obj = {};
  for (var i = 1; i <= 3; i++) {
    obj["num" + i] = "num" + i;
  }
  return obj;
}
如何将所述变量(num1、num2、num3)的值设置为对象内部同名键的值

我还应该补充一点,我希望用标准Javascript和/或原型来实现这一点。没有库或类似的东西。

您可以使用eval

var num1=43;
var num2=597;
var num3=5663683;
函数makeObj(){
var obj={};

对于(var i=1;i)为什么不直接将它们分配给对象而不是变量?不能将许多变量视为“组”。你需要使用数组或对象。可能重复感谢你的这篇文章和博客文章的链接。我知道eval,但现在不知道它的优点和缺点,所以我会检查一下。关于使用数组,我起初不喜欢它,因为数字是作为实例化变量提供给我的,但我知道它是如何使用的现在使用for循环可能会很有用,因为for循环给我们留下了增长/收缩数组的空间。如果我继续使用对象,我不必使用for循环……要使用给定的变量,我所要做的就是:nums.push(num1);nums.push(num2);nums.push(num3);
{ num1: 'num1', num2: 'num2', num3: 'num3' }
var num1 = 43;
var num2 = 597;
var num3 = 5663683;

function makeObj () {
  var obj = {};
  for (var i = 1; i <= 3; i++) {
    obj["num" + i] = eval("num" + i);
  }
  return obj;
}
var nums = [];
nums.push(43);
nums.push(597);
nums.push(5663683);

function makeObj () {
  var obj = {};
  for (var i = 0; i <= nums.length; i++) {
    obj["num" + (i+1)] = nums[i];
  }
  return obj;
}