小编Tim*_*imo的帖子

JavaScript对象中深层次更改的值

我有一个包含未知数量的其他对象的对象.每个(子)对象可以包含布尔值作为字符串,我想将它们更改为实际的布尔值.这是一个示例对象:

var myObj = {
  my1stLevelKey1: "true",
  my1stLevelKey2: "a normal string",
  my1stLevelKey3: {
    my2ndLevelKey1: {
      my3rdLevelKey1: {
        my4thLevelKey1: "true",
        my4thLevelKey2: "false"
      }
    },
    my2ndLevelKey2: {
      my3rdLevelKey2: "FALSE"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我最终想要的是:

var myObj = {
  my1stLevelKey1: true,
  my1stLevelKey2: "a normal string",
  my1stLevelKey3: {
    my2ndLevelKey1: {
      my3rdLevelKey1: {
        my4thLevelKey1: true,
        my4thLevelKey2: false
      }
    },
    my2ndLevelKey2: {
      my3rdLevelKey2: false
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

重要的是数字子对象/级别是未知的.如何使用经典JavaScript或Mootools有效地做到这一点?

javascript recursion mootools functional-programming data-structures

6
推荐指数
1
解决办法
7473
查看次数

jquery:选择具有类名和节点索引的元素

我有一堆带有“.myclass”类的元素。现在我想通过其节点索引选择这些元素之一并为其设置动画。我收到一条错误消息,指出该元素没有动画功能。

例子:

<div class="myclass"></div>
<div class="myclass"></div>
<div class="myclass"></div>

var indizes = [0, 3];

$.each(indizes, function(i, v) {
    $('.myclass')[v].animate({
        left: 100
    }, 1000);
});
Run Code Online (Sandbox Code Playgroud)

显然错误来自使用错误的选择器。如果我使用它确实有效

$($('.myclass')[v])
Run Code Online (Sandbox Code Playgroud)

代替

$('.myclass')[v]
Run Code Online (Sandbox Code Playgroud)

这是实际问题吗?嵌套选择器对我来说似乎很奇怪。

javascript jquery jquery-selectors

5
推荐指数
1
解决办法
1441
查看次数