代码之家  ›  专栏  ›  技术社区  ›  Bullines

动态更改对象参数名称

  •  2
  • Bullines  · 技术社区  · 14 年前

    如果我有以下信息:

    var myObj = { "Foo":{"prop1":"abc", "prop2":123 }, "Bar":{"prop1":"def", "prop2":456 } };
    

    是否有快速安全的方法修改对象,使其成为:

    { "Foo":{"prop1":"abc", "prop2":123 }, "Bar":{"PROP1":"def", "PROP2":456 } }
    

    我想动态更改Bar属性的属性名称的大小写。这有可能吗?

    1 回复  |  直到 14 年前
        1
  •  3
  •   fcalderan    14 年前

       var myObjBar = myObj['Bar'];
        for (p in myObjBar) {
          if (myObjBar.hasOwnProperty(p)) {
            var v = myObjBar[p],
                k = p.toUpperCase();
            delete myObjBar[p];
            myObjBar[k] = v;
    
          }
        }