JS в iRidium mobile построен на основе достаточно старого стандарта ECMAScript 3. Данный модуль добавляет функции, которые появились в новых версиях. Кроме того, в нем определены функции, которые есть в iRidium, но отличаются от стандартного описания (например, вместо setTimeout нужно писать IR.SetTimeout, что не удобно и не позволяет создавать многоплатформенный код).
Добавьте модуль в проект
Если используется grunt-скрипт Iridium Project Builder для автоматического построения проектов, то для установки модуля нужно использовать команду:
npm install https://github.com/bladerunner2020/js-ext.git --save
В противном случае просто скопируйте код из index.js в ваш irpz-проект.
ЗАМЕЧАНИЕ: js-ext должен быть первым модулем в списке модулей в iRidium mobile.
Array
- Array.prototype.indexOf - Source
- Array.prototype.every - Source
- Array.prototype.forEach
- Array.isArray
- Array.prototype.map
- Array.prototype.filter
- Array.prototype.includes
String
- String.prototype.trim
- String.prototype.repeat
Date
JSON
- JSON.parse - вместо JSON.Parse + корректная работа, если в строках есть символы \r или \n. Это отличается от стандарта JS, но, в Node JS JSON.parse корректно работает с этими символами.
- JSON.stringify - вместо JSON.Stringify
Number
- Number.isInteger
- Number.isFinite
- Number.isNaN
Function
- Function.prototype.bind - Source
- encode
Object
- Object.keys - Source
- Object.create
- Object.assign
Console
- console.log - вместо IR.Log
- console.error - идентичен console.log
Таймеры
- setTimeout - вместо IR.SetTimeout (NOTE: в setTimeout стандартное расположение аргументов для js)
- setInterval - вместо IR.SetInterval (NOTE: в setInterval стандартное расположение аргументов для js)
- clearTimeout - вместо IR.ClearTimeout
- clearInterval - вместо IRClearInterval
- v1.24.0 - Добавлена функция Array.prototype.includes (плюс тесты)
- v1.23.0 - Переработана функция console.log, удалена работа с модулями (require)
- v1.22.2 - Добавлена функция Number.isFinite
- v1.22.1 - Добавлена функция Number.isNaN
- v1.22.0 - Добавлена функция Object.assing
- v1.20.0 - Добавлена функция escape
- Александр Пивоваров aka Bladerunner2020 ([email protected])
- Анонимный автор из телеграм-группы Iridium Devs (реализация console.log)
MIT