code: function setProp(obj, key, value) {
      var path = [].concat(key);
      var lastKey = path.pop();
      var val = obj;
      for (var _i = 0, path_2 = path; _i < path_2.length; _i++) {
          var pathKey = path_2[_i];
          if (typeof val[pathKey] !== 'object') {
              val[pathKey] = {};
          }
          val = val[pathKey];
      }
      val[lastKey] = value;
      return obj;
  }
docs: Set the specific nested property
  
  @export
  @param {object} obj Destination object
  @param {(string|Array<string>)} key Key value
  @param {value} any Value to be set