猿问

js取变动对象名的值

  let test = [
  {
    id: test,
    all: {        "1_unq": [{            "o": [
                ["test", "0"],
                ["test1", "2"]
            ],            "name": "james"
        }],
    }
},{
    id: test,
    all: {        "2_unq": [{            "o": [
                ["test", "0"],
                ["test1", "2"]
            ],            "name": "mm"
        }],
    }
}
];

数据大概长这样

主要是要取all里面n_unq的值,因为_unq前面的数字会变动

所以我不能直接取,得跑for去找all里面有没有 unq这三个字,有的话就把里面的值传到页面上显示

思路是跑for,然后用正则表达式去all里找有没有unq,找到就取unq全名,然后再用取到的全名去取值

现在卡在取到unq全名后,取不到里面的值

let getName = "1_unq" //假设这是取到的全名
getName.o[0][1] //没办法取得值

可能是不能用变数吧

不知道大家有没有什么比较好的做法?


慕无忌1623718
浏览 427回答 2
2回答

元芳怎么了

let getName = "1_unq" //假设这是取到的全名test[i].all[getName].o0

Smart猫小萌

把对象转成字符串,正则替换,把键明替换成统一的,然后再parse为对象
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答