Sha256: 4004588aa7a3769d8c34ef9a837e1632237487e53ed57caec51bfcc6668f2c29

Contents?: true

Size: 823 Bytes

Versions: 138

Compression:

Stored size: 823 Bytes

Contents

'use strict';

var slice = Array.prototype.slice;
var isArgs = require('./isArguments');

var origKeys = Object.keys;
var keysShim = origKeys ? function keys(o) { return origKeys(o); } : require('./implementation');

var originalKeys = Object.keys;

keysShim.shim = function shimObjectKeys() {
	if (Object.keys) {
		var keysWorksWithArguments = (function () {
			// Safari 5.0 bug
			var args = Object.keys(arguments);
			return args && args.length === arguments.length;
		}(1, 2));
		if (!keysWorksWithArguments) {
			Object.keys = function keys(object) { // eslint-disable-line func-name-matching
				if (isArgs(object)) {
					return originalKeys(slice.call(object));
				}
				return originalKeys(object);
			};
		}
	} else {
		Object.keys = keysShim;
	}
	return Object.keys || keysShim;
};

module.exports = keysShim;

Version data entries

138 entries across 137 versions & 15 rubygems

Version Path
disco_app-0.18.4 test/dummy/node_modules/object-keys/index.js
disco_app-0.18.1 test/dummy/node_modules/object-keys/index.js
disco_app-0.12.7.pre.puma.pre.3 test/dummy/node_modules/object-keys/index.js
disco_app-0.14.0 test/dummy/node_modules/object-keys/index.js
disco_app-0.13.6.pre.puma.pre.3 test/dummy/node_modules/object-keys/index.js
tang-0.2.1 spec/tang_app/node_modules/object-keys/index.js
groonga-client-model-6.0.0 test/apps/rails6.0.3.5/node_modules/object-keys/index.js
groonga-client-model-6.0.0 test/apps/rails6.1.3/node_modules/object-keys/index.js
ruby2js-4.0.4 lib/tasks/testrails/node_modules/object-keys/index.js
ruby2js-4.0.3 lib/tasks/testrails/node_modules/object-keys/index.js
tang-0.2.0 spec/tang_app/node_modules/object-keys/index.js
tang-0.1.0 spec/tang_app/node_modules/object-keys/index.js
tang-0.0.9 spec/tang_app/node_modules/object-keys/index.js
enju_library-0.3.8 spec/dummy/node_modules/object-keys/index.js
condenser-0.3 lib/condenser/processors/node_modules/object-keys/index.js
ilog-0.4.1 node_modules/object-keys/index.js
ilog-0.4.0 node_modules/object-keys/index.js
ilog-0.3.3 node_modules/object-keys/index.js
condenser-0.2 lib/condenser/processors/node_modules/object-keys/index.js
condenser-0.1 lib/condenser/processors/node_modules/object-keys/index.js