1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| 'use strict';
|
| var KeyForSymbol = require('./KeyForSymbol');
| var Type = require('./Type');
|
| // https://262.ecma-international.org/14.0/#sec-canbeheldweakly
|
| module.exports = function CanBeHeldWeakly(v) {
| if (Type(v) === 'Object') {
| return true; // step 1
| }
| if (typeof v === 'symbol' && typeof KeyForSymbol(v) === 'undefined') {
| return true; // step 2
| }
| return false; // step 3
| };
|
|