* Lots of code cleanup * Cleanup parse-options tests - Rename objects for clarity and inline unneeded objects - Remove unneeded tests - Use Object.keys().length instead of a custom function - Use typeof === "object" instead of a custom function that checks the prototype tree as well, since we don't expect anything but an object literal. * Remove old switchFallback code * Remove polyfill for Function.prototype.bind * Inline small functions * Add more documentation and tests for options.currentUrlFullReload Closes #17 * Update package.json
13 lines
249 B
JavaScript
13 lines
249 B
JavaScript
module.exports = function(obj) {
|
|
if (null === obj || "object" !== typeof obj) {
|
|
return obj
|
|
}
|
|
var copy = obj.constructor()
|
|
for (var attr in obj) {
|
|
if (obj.hasOwnProperty(attr)) {
|
|
copy[attr] = obj[attr]
|
|
}
|
|
}
|
|
return copy
|
|
}
|