From 0c6160edc0f43c3cdee87b9da9cb045f223eb5ca Mon Sep 17 00:00:00 2001 From: Vitalii Perehonchuk Date: Mon, 10 Oct 2022 09:22:28 +0300 Subject: [PATCH] update(JS): web/javascript/reference/global_objects/array/some --- .../global_objects/array/some/index.md | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/files/uk/web/javascript/reference/global_objects/array/some/index.md b/files/uk/web/javascript/reference/global_objects/array/some/index.md index e154fcfd50..2a045f21c0 100644 --- a/files/uk/web/javascript/reference/global_objects/array/some/index.md +++ b/files/uk/web/javascript/reference/global_objects/array/some/index.md @@ -75,8 +75,9 @@ some(function(element, index, array) { /* … */ }, thisArg) > **Застереження:** Паралельні зміни такого роду, як описано в попередньому абзаці, часто призводять до важкого для розуміння коду, їх в цілому слід уникати (крім особливих випадків). -> **Примітка:** Виклик цього метода на пустому масиві повертає -> `false` для будь-якої перевірки! +`some()` діє як квантор існування в математиці. Таким чином, на пустому масиві він повертає `false` для будь-якої перевірки. + +Метод `some()` є [узагальненим](/uk/docs/Web/JavaScript/Reference/Global_Objects/Array#uzahalneni-metody-masyvu). Він лишень очікує, що значення `this` матиме властивість `length`, а також властивості з цілочисловими ключами. ## Приклади @@ -159,6 +160,20 @@ console.log([1, , 1].some((x) => x !== 1)); // false console.log([1, undefined, 1].some((x) => x !== 1)); // true ``` +### Виклик some() на об'єктах-немасивах + +Метод `some()` зчитує з `this` властивість `length`, а потім звертається до кожної цілочислової властивості. + +```js +const arrayLike = { + length: 3, + 0: "a", + 1: "b", + 2: "c", +}; +console.log(Array.prototype.some.call(arrayLike, (x) => typeof x === "number")); // false +``` + ## Специфікації {{Specifications}}