var $ = require('../internals/export'); var global = require('../internals/global'); var apply = require('../internals/function-apply'); var getCompositeKeyNode = require('../internals/composite-key'); var getBuiltIn = require('../internals/get-built-in'); var create = require('../internals/object-create'); var Object = global.Object; var initializer = function () { var freeze = getBuiltIn('Object', 'freeze'); return freeze ? freeze(create(null)) : create(null); }; // https://github.com/tc39/proposal-richer-keys/tree/master/compositeKey $({ global: true }, { compositeKey: function compositeKey() { return apply(getCompositeKeyNode, Object, arguments).get('object', initializer); } });