code: function props(data, list, val) {
  
      // 处理子对象
      if (list.length) {
          let name = list.shift();
  
          // 处理属性
          if (name) {
              name = unescape(name);
  
              if (!data) {
                  data = num.test(name) ? [] : {};
              }
  
              data[name] = props(data[name], list, val);
          } else {
              data = [...(data || []), props(null, list, val)];
          }
  
          // 返回子对象
          return data;
      }
  
      // 返回值
      return val;
  }
docs: ****************************************
  添加属性
  ****************************************