为了账号安全,请及时绑定邮箱和手机立即绑定

在 Javascript 中指定变量作为数组目标(可变性?)

在 Javascript 中指定变量作为数组目标(可变性?)

临摹微笑 2023-10-20 15:32:12
我在 Javascript 中有 5 个要填充的数组,我填充的数组将取决于“x”的值。我在这里对变量的使用/可变性感到非常困惑。我的代码如下......//Node arrays that hold the IDs of each nodenodeOne = [];nodeTwo = [];nodeThree = [];nodeFour = [];nodeFive = [];var nodesButtonToNode = {pn_btn_1:"nodeOne", pn_btn_2:"nodeTwo", pn_btn_3:"nodeThree", pn_btn_4:"nodeFour", pn_btn_5:"nodeFive"};x = "pn_btn_1"; nodesButtonToNode.x.push("I am supposed to go into nodeOne")简而言之,如果 x =“pn_btn_1”,则将通过指定nodesButtonToNode 中的键来提取需要填充的数组的值。在这种情况下,该数组将是nodeOne。如果 x = “pn_btn_2”,则需要添加的区域将为 nodeTwo。正如预期的那样,我收到了很多未定义的错误,并且我不确定哪里出错了。任意指针的许多 TIA
查看完整描述

3 回答

?
白衣非少年

TA贡献1155条经验 获得超0个赞

我在 Javascript 中有 5 个要填充的数组,我填充的数组将取决于“x”的值。我在这里对变量的使用/可变性感到非常困惑。我的代码如下......


//Node arrays that hold the IDs of each node

nodeOne = [];

nodeTwo = [];

nodeThree = [];

nodeFour = [];

nodeFive = [];

var nodesButtonToNode = {pn_btn_1:"nodeOne", pn_btn_2:"nodeTwo", pn_btn_3:"nodeThree", pn_btn_4:"nodeFour", pn_btn_5:"nodeFive"};


x = "pn_btn_1"; 


nodesButtonToNode.x.push("I am supposed to go into nodeOne")


查看完整回答
反对 回复 2023-10-20
?
HUX布斯

TA贡献1876条经验 获得超6个赞

您的nodesButtonToNode应该使用实际的数组而不是它们的名称。


var nodesButtonToNode = {

    pn_btn_1: nodeOne,

    pn_btn_2: nodeTwo,

    pn_btn_3: nodeThree,

    pn_btn_4: nodeFour,

    pn_btn_5: nodeFive

};

这将让您直接更新数组。


另外, x 的值不在您的映射中,它应该是pn_btn_1


//Node arrays that hold the IDs of each node

nodeOne = [];

nodeTwo = [];

nodeThree = [];

nodeFour = [];

nodeFive = [];

var nodesButtonToNode = {

    pn_btn_1: nodeOne,

    pn_btn_2: nodeTwo,

    pn_btn_3: nodeThree,

    pn_btn_4: nodeFour,

    pn_btn_5: nodeFive

};



x = "pn_btn_1"; 


nodesButtonToNode[x].push("I am supposed to go into nodeOne");


console.log(JSON.stringify(nodeOne));


查看完整回答
反对 回复 2023-10-20
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

您的语法有一些错误,请查看示例


const nodeOne = [];

const nodeTwo = [];

const nodeThree = [];

const nodeFour = [];

const nodeFive = [];


const nodesButtonToNode = {

  pn_btn_1: nodeOne,

  pn_btn_2: nodeTwo,

  pn_btn_3: nodeThree,

  pn_btn_4: nodeFour,

  pn_btn_5: nodeFive

};


const x = "pn_btn_1"; 


nodesButtonToNode[x].push("I am supposed to go into nodeOne");


console.log(nodesButtonToNode);


查看完整回答
反对 回复 2023-10-20
  • 3 回答
  • 0 关注
  • 107 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信