var isNumber = require('./isNumber.js'); var isArray = require('./isArray.js'); var isObject = require('./isObject.js'); function set (obj, path, value) { var key = String(path[0]); if (path.length === 1) { obj[key] = value; return; } if (!isArray(obj[key]) || !isObject(obj[key])) { var nextKey = path[1]; obj[key] = isNumber(nextKey) ? [] : {}; } return set(obj[key], path.slice(1), value); } module.exports = set;