zoukankan      html  css  js  c++  java
  • JS 对象的属性如果没有就初始化

    function fuck (inObj, path, parms) {
        // 一个长得像对象的字符串
        var Things = path.split(".");
        // 即将返回的对象
        var obj = inObj;
        // 不断迭代的key值
        var key = "";
        // 赋值
        var strparms = JSON.stringify(parms);
    
        for (var i = 0; i < Things.length; i++) {
            // 累加key
            key += Things[i]
            // 如果对象不存在
            if (!eval("obj." + key)) {
                // 则创建它
                eval("obj." + key + " = {}")
            }
            // 如果是最后一个的话
            if (i === Things.length - 1) {
                eval("obj." + key + " = " + strparms)
            }
            // 再叠加一次.
            key += ".";
        }
        // 循环结束,返回对象
        return obj
    }
    
    var path = "D01.D0104.D010442.D01044207.D0104420707.D010442070701"
    
    fuck({a: 123}, path, {id: 123, label: 321})
  • 相关阅读:
    异或运算
    GitHub使用简介
    归并排序
    快速排序
    字符串匹配
    Runner站立会议06
    Runner站立会议05
    Runner站立会议04
    记计账需求分析
    Runner站立会议03
  • 原文地址:https://www.cnblogs.com/CyLee/p/9153782.html
Copyright © 2011-2022 走看看