Skip to content

bladerunner2020/js-ext

Repository files navigation

Модуль js-ext для проектов в iRidium mobile

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

  • Date.now
  • Date.prototype.toISOString - Source
  • Date.prototype.parse - Source

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 (pivovarov@gmail.com)
  • Анонимный автор из телеграм-группы Iridium Devs (реализация console.log)

Лицензия

MIT

About

Расширение JS для iRidium Mobile

Resources

Stars

Watchers

Forks

Packages

No packages published