c # Размер шрифта Тессеракта

Насколько мне известно, любой ответ, который может быть опубликован здесь, может иметь неожиданные побочные эффекты.

В среде, совместимой с ES2015, вы можете избежать любых побочных эффектов, используя WeakMap .

const id = (() => {
    let currentId = 0;
    const map = new WeakMap();

    return (object) => {
        if (!map.has(object)) {
            map.set(object, ++currentId);
        }

        return map.get(object);
    };
})();

id({}); //=> 1

0
задан dontHaveName 18 January 2019 в 13:20
поделиться