将参数的文本名称传递给JavaScript中的函数

时间:2015-05-07 15:00:01

标签: javascript parameters

以下是我正在处理的一些代码之外的内容。有没有办法将参数的文本名称传递给函数?让我们说,例如,我使用display(name);来调用显示功能。函数是否可以识别其值的名称(即name = Bob)并在第2行中找到文档元素?

function display(attribute) {
    var putItHere = "'show-"+ ~~~TEXT OF PARAMETER SHOULD GO HERE~~ +"'";
    document.getElementById(putItHere).innerHTML = attribute;
}
display(name);

1 个答案:

答案 0 :(得分:0)

我认为我的问题比任何困惑更多,因为答案看起来“非常明显”,我肯定一定会遗漏一些东西。 。 。

。 。 。我观察到你的问题陈述中似乎存在不一致。 首先你说“playerHeight”的key是“show- playerHeight”。但是,在下一句中,你说“翼展”的关键是......(show-翼展”但是......)“翼展。”

坦率地说,在这种情况下,我诚恳地建议“DRY只是......一个原则。”一个经验法则,你永远不会在平板电脑上找到刚刚从山上下来的白发男子携带的石头。

尽管在一些抽象的学术意义上它可能并非“绝对必要”,“无论是随身携带还是其价值”,但这样做很可能更清楚,它可能会产生更强(!)和更可维护(!!)的代码。原因如下:

如果你“过于聪明地”试图“避免”携带一个或另一个,那么你必须向该信息的接收者强加推断“其他 - 的义务或一“。很快,你的代码中充斥着各种“聪明”的代码。所有无关彼此。

然后,“市场营销部门”以他们最新的头脑发型(CEO认为很棒)来称呼。这个想法打破你的“聪明”假设。

。 。 。所以,你的团队四处乱窜,改变(单独)所有那些“聪明”的代码(单独)“推断”过去曾经是真实的,但是,感谢市场部,不再是真的。

。 。 。并且,不幸的是,您的团队修复了除了一个以外的所有。 。 。

。 。 。并且,大多数不幸的是,你知道它。

某个地方,现在,由于你的“聪明”,现在有一些东西:“滴答滴答滴答滴答滴答滴答......”

因此,我建议“DRY是原则。”将其用作经验法则​​和指南。但是,不要以牺牲可维护性或清晰度为代价。如果您故意(!)编写一段代码,告诉许多其他代码段“他们已经知道的东西”,那么只有一个当市场营销部门再次打电话时,必须更改的一段代码。此一个更改将适用于所有多个个别案例,无论(“谁知道肯定?”)他们可能是