美文网首页
js动态获取对象二级(多级)属性(值)-通用方法

js动态获取对象二级(多级)属性(值)-通用方法

作者: 初心不改_0055 | 来源:发表于2020-03-30 11:26 被阅读0次

需求:a,b可以为变量,取到b的值1;

var obj = {
    a: {
        b: 1
    }
};
var key = "a.b";

方案:

方案1

eval("obj." + key);
输出结果: 1

方案2

new Function("return " + ("obj." + key))();
输出结果: 1

方案3 - 通用方案(微信小程序不支持eval)

var ev = function (data, str){
    let arr = str.split('.');
    let res = data;
    for(let i in arr){
      res = res[arr[i]];
    }
    return res;
};
ev(obj, key)

输出结果: 1

相关文章

  • js动态获取对象二级(多级)属性(值)-通用方法

    需求:a,b可以为变量,取到b的值1; 方案: 方案1 方案2 方案3 - 通用方案(微信小程序不支持eval)

  • react 对象动态添加属性 setState

    // js 对象动态添加 js对象动态添加 //总结,给对象动态添加变量属性的方法如下: //obj[变量]=变...

  • 对象

    js对象 js对象是j's的基本数据类型, js中的对象是动态的, 可以新增属性,也可以删除属性。 1.获取时间 ...

  • python-16-面向对象基础2

    一、属性的增删改查 1.查(获取对象属性的值)方法1:对象.属性 --> 获取指定属性值,属性不存在会报错 方...

  • Runtime

    用法 关联对象 动态获取类的属性 交叉方法

  • 反射获取属性值

    简单的通过动态属性名获取属性值一个简单的JAVA对象

  • js 获取对象属性值的方法

    第一种通过.获取 第二种通过[]获取 那什么时候用点获取什么时候[]呢,可以在不同场景使用两个的相同点:都是获取对...

  • 反射

    反射的作用① 动态的加载类、动态的获取类的信息(属性,方法,构造方法) ② 动态构造对象 ③ 动态调用类和对象的任...

  • JavaScript-DOM-getAttribute&

    1.getAttribute方法可以获取Dom对象的属性值(主要用于获取自定义属性的值) 参数:属性名 返回值:对...

  • JS获取对象属性方法

    在JavaScript中,我们有4种方法可以获取对象中的属性,分别是for...in、Object.keys()、...

网友评论

      本文标题:js动态获取对象二级(多级)属性(值)-通用方法

      本文链接:https://www.haomeiwen.com/subject/wcwmuhtx.html