我有这样的功能:
function x(a,b,c) {
eval("window.document.forms['"+ a +"']."+ b +".value = '"+ c +"'");
}
我理解为什么 eval === evil 大部分时间,那么在不使用eval的情况下编写该函数的最佳方法是什么?以下是否有意义?为什么呢?
function x(a,b,c) {
window.document.forms[a].b.value = c.toString();
}
答案 0 :(得分:1)
您的上述函数没有理由使用eval
- 使用括号表示法通过变量访问对象属性:
window.document.forms[a][b].value = c.toString();