UNPKG

object-casing

Version:

Walks throught an object using a callback function to convert the object key, returning a new object with new keys.

19 lines (18 loc) 688 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.caseKeys = function (obj, casingCallback) { if (!obj || typeof obj !== 'object' || obj instanceof RegExp || obj instanceof Date) { return obj; } if (Array.isArray(obj)) { return obj.map(function (item) { return exports.caseKeys(item, casingCallback); }); } var keys = Object.keys(obj); var newObject = {}; for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) { var key = keys_1[_i]; var newKey = casingCallback(key); newObject[newKey] = exports.caseKeys(obj[key], casingCallback); } return newObject; };