FJCVTZS - це "Перетворення Javascript з плаваючою комою на підписану фіксовану крапку, округлення до нуля". Він підтримується в чіпах Arm v8.3-A та пізніших версіях. Що дивно, адже ви не очікуєте побачити JavaScript так близько до оголеного металу.
Я можу знайти пояснення того, що робить інструкція, але не чому вона існує. Цей потік говорить: "він існує як одна інструкція, оскільки відсутність у JS цілочисельного типу означає, що певні випадки використання потребують цієї операції нецензурно часто без поважних алгоритмічних причин." Це правдоподібно, але я хотів би більш детального розуміння.
ToInt32
в специфікації), коли ви застосовуєте побітове оператор до числа та в інший час (якщо движок не зміг зберегти число як ціле число як оптимізація, але в багатьох випадках це неможливо).