123456789101112131415161718192021 |
- 'use strict';
-
- module.exports = function () {
- var weakMap, x;
- if (typeof WeakMap !== 'function') return false;
- try {
- // WebKit doesn't support arguments and crashes
- weakMap = new WeakMap([[x = {}, 'one'], [{}, 'two'], [{}, 'three']]);
- } catch (e) {
- return false;
- }
- if (String(weakMap) !== '[object WeakMap]') return false;
- if (typeof weakMap.set !== 'function') return false;
- if (weakMap.set({}, 1) !== weakMap) return false;
- if (typeof weakMap.delete !== 'function') return false;
- if (typeof weakMap.has !== 'function') return false;
- if (weakMap.get(x) !== 'one') return false;
-
- return true;
- };
|