/
githubmirror
/
immutable-js
Обзор
Документация
Войти
/
githubmirror
/
immutable-js
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
v4.3.9
src/toJS.js
33 строки
746 B
Julien Deniau
fix Prototype Pollution in mergeDeep, toJS, etc.
03 мар 2026, 11:08
03 мар 2026, 11:08
faeb58b
Код
Авторство
О чём код?
import { Seq } from './Seq'; import { isCollection } from './predicates/isCollection'; import { isKeyed } from './predicates/isKeyed'; import isDataStructure from './utils/isDataStructure'; import { isProtoKey } from './utils/protoInjection'; export function toJS(value) { if (!value || typeof value !== 'object') { return value; } if (!isCollection(value)) { if (!isDataStructure(value)) { return value; } value = Seq(value); } if (isKeyed(value)) { const result = {}; value.__iterate((v, k) => { if (isProtoKey(k)) { return; } result[k] = toJS(v); }); return result; } const result = []; value.__iterate(v => { result.push(toJS(v)); }); return result; }