/
lostSun
/
project-client-server-apps
Обзор
Документация
Войти
/
lostSun
/
project-client-server-apps
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
node_modules/es-abstract/2018/SetFunctionLength.js
28 строк
984 B
1lostsun
initial commit
05 май 2025, 11:35
05 май 2025, 11:35
fe8f535
Код
Авторство
О чём код?
'use strict'; var $TypeError = require('es-errors/type'); var isInteger = require('math-intrinsics/isInteger'); var DefinePropertyOrThrow = require('./DefinePropertyOrThrow'); var HasOwnProperty = require('./HasOwnProperty'); var IsExtensible = require('./IsExtensible'); // https://262.ecma-international.org/9.0/#sec-setfunctionlength module.exports = function SetFunctionLength(F, length) { if (typeof F !== 'function' || !IsExtensible(F) || HasOwnProperty(F, 'length')) { throw new $TypeError('Assertion failed: `F` must be an extensible function and lack an own `length` property'); } if (typeof length !== 'number') { throw new $TypeError('Assertion failed: `length` must be a Number'); } if (length < 0 || !isInteger(length)) { throw new $TypeError('Assertion failed: `length` must be an integer >= 0'); } return DefinePropertyOrThrow(F, 'length', { '[[Configurable]]': true, '[[Enumerable]]': false, '[[Value]]': length, '[[Writable]]': false }); };