Sha256: d16fdde579d353a1b188432eb40d80f3b3becee16794309ee75f61974756ba53
Contents?: true
Size: 816 Bytes
Versions: 26
Compression:
Stored size: 816 Bytes
Contents
/*! * Chai - getProperties utility * Copyright(c) 2012-2014 Jake Luer <jake@alogicalparadox.com> * MIT Licensed */ /** * ### .getProperties(object) * * This allows the retrieval of property names of an object, enumerable or not, * inherited or not. * * @param {object} object * @returns {Array} * @namespace Utils * @name getProperties * @public */ export function getProperties(object) { var result = Object.getOwnPropertyNames(object); /** * @param {unknown} property */ function addProperty(property) { if (result.indexOf(property) === -1) { result.push(property); } } var proto = Object.getPrototypeOf(object); while (proto !== null) { Object.getOwnPropertyNames(proto).forEach(addProperty); proto = Object.getPrototypeOf(proto); } return result; }
Version data entries
26 entries across 26 versions & 1 rubygems