javascript - 尝试在 javascript 中动态处理对象属性

标签 javascript jquery arrays

我正在尝试弄清楚这是否合理,但最多只能得到语法错误。所以我想知道这是否可能。

我拥有的是一个对象(仅示例)

var myObj = {
       something1_max:50,
       something1_enabled:false,
       something1_locked:true,
       something2_max:100,
       something2_enabled:false,
       something2_locked:true,
       something3_max:10,
       something3_enabled:true,
       something3_locked:true
    }

我想通过函数做的是再次做类似的事情,例如总结事情..

function displayDetails(theScope, obj)
{
   console.log(obj.[theScope]_max);
}

(function(){displayDetails('something3', myObj);})()

因此,当调用 displayDetails() 时,无论我在本示例中看到的范围是该范围的最大值。在该示例的控制台日志中,我希望看到 10

最佳答案

JavaScript 对象的属性始终可以使用 bracket 语法作为字符串进行访问,即 object['property']。当然,这意味着您可以动态构建该字符串:

console.log(obj[theScope + '_max']);

关于javascript - 尝试在 javascript 中动态处理对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18856730/

相关文章:

javascript - 选择选项的验证不起作用

javascript - 使用静态 HTML 文件的主干路由

javascript - EaselJS - 有两个具有不同 FPS 的 Canvas

arrays - 如何在 Kotlin 中定义 funs(函数)数组?

java - java中的内存使用/引用

javascript - 如何仅使用 javascript 弹出可滚动的 css div?

javascript - 在不知道数据类型的情况下对 url 进行 $.ajax 调用

javascript - 如何获取某个类元素的当前索引? (JQuery)

jQuery toggleClass 不更改已设置字体大小的后代选择器的字体大小

vb.net - VB.net 如何在正斜杠或反斜杠处分割字符串?