Spec-Zone.ru › Cordova 7

cordova-plugin-globalization

Этот плагин получает информацию и выполняет операции, специфичные для региональных настроек пользователя, языка и часового пояса. Обратите внимание на разницу между регионом и языком: регион управляет отображением чисел, дат и времени для определенного региона, а язык определяет язык текста, независимо от региональных настроек. Разработчики часто используют регион для установки обоих параметров, но нет причины, по которой пользователь не мог установить язык «Английский», а регион — «Французский», чтобы текст отображался на английском языке, а даты, время и т. д. отображались так, как они отображаются во Франции. К сожалению, большинство мобильных платформ в настоящее время не различают эти настройки.

Этот плагин определяет глобальный navigator.globalization объект.

Хотя он доступен в глобальной области, он недоступен до события deviceready.

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    console.log(navigator.globalization);
}

Сообщайте о проблемах с этим плагином на следящей системе Apache Cordova.

Установка

cordova plugin add cordova-plugin-globalization

Объекты

  • GlobalizationError

Методы

  • navigator.globalization.getPreferredLanguage
  • navigator.globalization.getLocaleName
  • navigator.globalization.dateToString
  • navigator.globalization.stringToDate
  • navigator.globalization.getDatePattern
  • navigator.globalization.getDateNames
  • navigator.globalization.isDayLightSavingsTime
  • navigator.globalization.getFirstDayOfWeek
  • navigator.globalization.numberToString
  • navigator.globalization.stringToNumber
  • navigator.globalization.getNumberPattern
  • navigator.globalization.getCurrencyPattern

navigator.globalization.getPreferredLanguage

Получение тега языка BCP 47 для текущего языка клиента.

navigator.globalization.getPreferredLanguage(successCallback, errorCallback);

Описание

Возвращает тег идентификатора языка, совместимый с BCP-47, successCallback с объектом properties в качестве параметра. Этот объект должен иметь свойство value со значением String.

Если при получении языка возникла ошибка, то выполняется errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.UNKNOWN_ERROR.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

Когда браузер настроен на язык en-US, это должно отобразить всплывающее диалоговое окно с текстом language: en-US:

navigator.globalization.getPreferredLanguage(
    function (language) {alert('language: ' + language.value + '\n');},
    function () {alert('Error getting language\n');}
);

Особенности Android

  • Возвращает двухбуквенный код языка ISO 639-1, двухбуквенный код страны ISO 3166-1 и вариант, разделенные дефисами. Примеры: «en», «en-US», «US»

Особенности Windows Phone 8

  • Возвращает двухбуквенный код языка ISO 639-1 и двухбуквенный код страны ISO 3166-1 регионального варианта, соответствующего настройке «Язык», разделенные дефисом.
  • Обратите внимание, что региональный вариант является свойством настройки «Язык», а не определяется несвязанной настройкой «Страна/регион» в Windows Phone.

Особенности Windows

  • Возвращает двухбуквенный код языка ISO 639-1 и двухбуквенный код страны ISO 3166-1 регионального варианта, соответствующего настройке «Язык», разделенные дефисом.

Особенности браузера

  • Используется метод getLocaleName в качестве резервного варианта.

navigator.globalization.getLocaleName

Возвращает тег BCP 47 для текущей региональной настройки клиента.

navigator.globalization.getLocaleName(successCallback, errorCallback);

Описание

Возвращает строку идентификатора региона, совместимую с BCP 47, successCallback с объектом properties в качестве параметра. Этот объект должен содержать свойство value со значением String.

Если при получении региональных настроек возникла ошибка, то выполняется errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.UNKNOWN_ERROR.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

При настройке браузера на регион en-US отображается всплывающее диалоговое окно с текстом locale: en-US.

navigator.globalization.getLocaleName(
    function (locale) {alert('locale: ' + locale.value + '\n');},
    function () {alert('Error getting locale\n');}
);

Особенности Android

  • Java не различает установленные «язык» и «регион», поэтому этот метод фактически идентичен navigator.globalization.getPreferredLanguage().

Особенности Windows Phone 8

  • Возвращает двухбуквенный код языка ISO 639-1 и двухбуквенный код страны ISO 3166-1 регионального варианта, соответствующего настройке «Формат региона», разделенные дефисом.

Особенности Windows

  • Настройки региона можно изменить в Панели управления —> Часы, язык и регион —> Регион —> Форматы —> Формат и в Настройках —> Регион —> Региональный формат в Windows Phone 8.1.

Особенности браузера

  • IE возвращает регион операционной системы. Chrome и Firefox возвращают тег языка браузера.

navigator.globalization.dateToString

Возвращает дату в формате строки в соответствии с регионом и часовым поясом клиента.

navigator.globalization.dateToString(date, successCallback, errorCallback, options);

Описание

Возвращает отформатированную дату String через свойство value объекта, переданного в качестве параметра методу successCallback.

Входящий параметр date должен быть типа Date.

Если при форматировании даты возникла ошибка, то выполняется errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.FORMATTING_ERROR.

Параметр options является необязательным, и его значения по умолчанию:

{formatLength:'short', selector:'date and time'}

Параметр options.formatLength может быть short, medium, long, или full.

Параметр options.selector может быть date, time или date and time.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

Если браузер настроен на регион en_US , это отобразит всплывающее диалоговое окно с текстом, аналогичным date: 9/25/2012 4:21PM с использованием значений по умолчанию:

navigator.globalization.dateToString(
    new Date(),
    function (date) { alert('date: ' + date.value + '\n'); },
    function () { alert('Error getting dateString\n'); },
    { formatLength: 'short', selector: 'date and time' }
);

Особенности Android

  • formatLength опции являются подмножеством Unicode UTS #35. Значение по умолчанию short зависит от выбранного пользователем формата даты в Settings -> System -> Date & time -> Choose date format, которые предоставляют шаблон year только с 4 цифрами, а не 2. Это означает, что он не полностью согласован с ICU.

Особенности Windows Phone 8

  • Параметр formatLength поддерживает только значения short и full.

  • Шаблон для выбора «дата и время» всегда имеет полный формат даты и времени.

  • Возвращаемое значение может не полностью соответствовать ICU в зависимости от региональных настроек пользователя.

Особенности Windows

  • Параметр formatLength поддерживает только значения short и full.

  • Шаблон для выбора «дата и время» всегда имеет полный формат даты и времени.

  • Возвращаемое значение может не полностью соответствовать ICU в зависимости от региональных настроек пользователя.

Особенности браузера

  • Поддерживается только 79 регионов, так как в этом методе используется moment.js.

  • Возвращаемое значение может не полностью соответствовать ICU в зависимости от региональных настроек пользователя.

  • Выбор time поддерживает только форматы full и short.

Особенности Firefox OS

  • formatLength не различает long и full
  • только один метод отображения даты (нет версии long или full)

navigator.globalization.getCurrencyPattern

Возвращает строку шаблона для форматирования и анализа значений валюты в соответствии с пользовательскими предпочтениями клиента и кодом валюты ISO 4217.

navigator.globalization.getCurrencyPattern(currencyCode, successCallback, errorCallback);

Описание

Возвращает шаблон successCallback с объектом properties в качестве параметра. Этот объект должен содержать следующие свойства:

  • шаблон: Шаблон валюты для форматирования и анализа значений валюты. Шаблоны следуют Unicode Technical Standard #35. (Строка)

  • код: Код валюты ISO 4217 для шаблона. (Строка)

  • дробь: Количество дробных знаков, используемых при анализе и форматировании валюты. (Число)

  • округление: Приращение округления, используемое при анализе и форматировании. (Число)

  • десятичная_запятая: Символ десятичной запятой, используемый при анализе и форматировании. (Строка)

  • группировка: Символ группировки, используемый при анализе и форматировании. (Строка)

Входящий параметр currencyCode должен быть кодом валюты ISO 4217, например, 'USD'.

Если при получении шаблона возникла ошибка, то выполняется errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.FORMATTING_ERROR.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • iOS
  • Windows

Пример

При настройке браузера на регион en_US и выбранной валюте — доллары США, этот пример отобразит всплывающее диалоговое окно с текстом, аналогичным результатам ниже:

navigator.globalization.getCurrencyPattern(
    'USD',
    function (pattern) {
        alert('pattern: '  + pattern.pattern  + '\n' +
              'code: '     + pattern.code     + '\n' +
              'fraction: ' + pattern.fraction + '\n' +
              'rounding: ' + pattern.rounding + '\n' +
              'decimal: '  + pattern.decimal  + '\n' +
              'grouping: ' + pattern.grouping);
    },
    function () { alert('Error getting pattern\n'); }
);

Ожидаемый результат:

pattern: $#,##0.##;($#,##0.##)
code: USD
fraction: 2
rounding: 0
decimal: .
grouping: ,

Особенности Windows

  • Поддерживаются только свойства 'код' и 'дробь'

navigator.globalization.getDateNames

Возвращает массив имён месяцев или дней недели в зависимости от предпочтений пользователя клиента и календаря.

navigator.globalization.getDateNames(successCallback, errorCallback, options);

Описание

Возвращает массив имён в successCallback с объектом properties в качестве параметра. Этот объект содержит свойство value со значением Array типа String. Массив содержит имена, начиная с первого месяца года или первого дня недели в зависимости от выбранного параметра.

Если возникнет ошибка при получении имён, то выполняется errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.UNKNOWN_ERROR.

Параметр options является необязательным и по умолчанию имеет следующие значения:

{type:'wide', item:'months'}

Значение options.type может быть narrow или wide.

Значение options.item может быть months или days.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

Когда в браузере установлен локаль en_US, этот пример отображает серию из двенадцати всплывающих диалоговых окон, по одному на каждый месяц, с текстом, аналогичным month: January:

navigator.globalization.getDateNames(
    function (names) {
        for (var i = 0; i < names.value.length; i++) {
            alert('month: ' + names.value[i] + '\n');
        }
    },
    function () { alert('Error getting names\n'); },
    { type: 'wide', item: 'months' }
);

Особенности Firefox OS

  • options.type поддерживает значение genitive, важное для некоторых языков.

Особенности Windows Phone 8

  • Массив месяцев содержит 13 элементов.
  • Возвращаемый массив может не полностью соответствовать ICU в зависимости от локали пользователя.

Особенности Windows

  • Массив месяцев содержит 12 элементов.
  • Возвращаемый массив может не полностью соответствовать ICU в зависимости от локали пользователя.

Особенности браузера

  • Имена дат не полностью соответствуют ICU.
  • Массив месяцев содержит 12 элементов.

navigator.globalization.getDatePattern

Возвращает строку шаблона для форматирования и анализа дат в соответствии с предпочтениями пользователя клиента.

navigator.globalization.getDatePattern(successCallback, errorCallback, options);

Описание

Возвращает шаблон в successCallback. Передаваемый в качестве параметра объект содержит следующие свойства:

  • pattern: Шаблон даты и времени для форматирования и анализа дат. Шаблоны следуют Unicode Technical Standard #35. (Строка)

  • timezone: Сокращённое имя часового пояса на клиенте. (Строка)

  • iana_timezone: Имя часового пояса IANA на клиенте. (Строка)

  • utc_offset: Текущая разница во времени в секундах между часовым поясом клиента и координированным всемирным временем. (Число)

  • dst_offset: Текущая разница во времени в секундах между летним временем клиента и стандартным временем клиента. (Число)

Если возникнет ошибка при получении шаблона, errorCallback выполнится с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.PATTERN_ERROR.

Параметр options является необязательным и по умолчанию имеет следующие значения:

{formatLength:'short', selector:'date and time'}

Значение options.formatLength может быть short, medium, long или full. Значение options.selector может быть date, time или date and time.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

Когда в браузере установлена локаль en_US, этот пример отображает всплывающее диалоговое окно с текстом, подобным pattern: M/d/yyyy h:mm a:

function checkDatePattern() {
    navigator.globalization.getDatePattern(
        function (date) { alert('pattern: ' + date.pattern + '\n'); },
        function () { alert('Error getting pattern\n'); },
        { formatLength: 'short', selector: 'date and time' }
    );
}

Особенности Windows Phone 8

  • formatLength поддерживает только значения short и full.

  • pattern для шаблона date and time возвращает только полный формат даты и времени.

  • timezone возвращает полное имя часового пояса.

  • Свойство dst_offset не поддерживается и всегда возвращает ноль.

  • Шаблон может не полностью соответствовать ICU в зависимости от локали пользователя.

Особенности Windows

  • formatLength поддерживает только значения short и full.

  • pattern для шаблона date and time возвращает только полный формат даты и времени.

  • timezone возвращает полное имя часового пояса.

  • Свойство iana_timezone не поддерживается и всегда возвращает пустую строку.

  • Свойство dst_offset не поддерживается и всегда возвращает ноль.

  • Шаблон может не полностью соответствовать ICU в зависимости от локали пользователя.

Особенности браузера

  • Свойство 'pattern' не поддерживается и возвращает пустую строку.

  • Только Chrome возвращает свойство 'timezone'. Его формат — "Часть мира/{Город}". Другие браузеры возвращают пустую строку.

navigator.globalization.getFirstDayOfWeek

Возвращает первый день недели в соответствии с предпочтениями пользователя клиента и календарём.

navigator.globalization.getFirstDayOfWeek(successCallback, errorCallback);

Описание

Дни недели нумеруются, начиная с 1, где 1 — воскресенье. Возвращает день в successCallback с объектом properties в качестве параметра. Этот объект должен содержать свойство value со значением Number.

Если возникнет ошибка при получении шаблона, то выполняется errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.UNKNOWN_ERROR.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

Когда в браузере установлена локаль en_US, это отображает всплывающее диалоговое окно с текстом, подобным day: 1.

navigator.globalization.getFirstDayOfWeek(
    function (day) {alert('day: ' + day.value + '\n');},
    function () {alert('Error getting day\n');}
);

Особенности Windows

  • В Windows 8.0/8.1 значение зависит от предпочтений календаря пользователя. В Windows Phone 8.1 значение зависит от текущей локали.

Особенности браузера

  • Поддерживается только 79 локалей, так как в этом методе используется moment.js.

navigator.globalization.getNumberPattern

Возвращает строку шаблона для форматирования и анализа чисел в соответствии с предпочтениями пользователя клиента.

navigator.globalization.getNumberPattern(successCallback, errorCallback, options);

Описание

Возвращает шаблон в successCallback с объектом properties в качестве параметра. Этот объект содержит следующие свойства:

  • pattern: Шаблон числа для форматирования и анализа чисел. Шаблоны следуют Unicode Technical Standard #35. (Строка)

  • symbol: Символ, используемый при форматировании и анализе, например, символ процента или валюты. (Строка)

  • fraction: Количество дробных знаков для использования при анализе и форматировании чисел. (Число)

  • rounding: Шаг округления для использования при анализе и форматировании. (Число)

  • positive: Символ для положительных чисел при анализе и форматировании. (Строка)

  • negative: Символ для отрицательных чисел при анализе и форматировании. (Строка)

  • decimal: Символ десятичной точки для анализа и форматирования. (Строка)

  • grouping: Символ группировки для анализа и форматирования. (Строка)

Если возникнет ошибка при получении шаблона, то выполняется errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки — GlobalizationError.PATTERN_ERROR.

Параметр options является необязательным и по умолчанию имеет следующие значения:

{type:'decimal'}

Значение options.type может быть decimal, percent или currency.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

Когда в браузере установлена локаль en_US, это должно отобразить всплывающее диалоговое окно с текстом, аналогичным результатам ниже:

navigator.globalization.getNumberPattern(
    function (pattern) {alert('pattern: '  + pattern.pattern  + '\n' +
                              'symbol: '   + pattern.symbol   + '\n' +
                              'fraction: ' + pattern.fraction + '\n' +
                              'rounding: ' + pattern.rounding + '\n' +
                              'positive: ' + pattern.positive + '\n' +
                              'negative: ' + pattern.negative + '\n' +
                              'decimal: '  + pattern.decimal  + '\n' +
                              'grouping: ' + pattern.grouping);},
    function () {alert('Error getting pattern\n');},
    {type:'decimal'}
);

Результаты:

pattern: #,##0.###
symbol: .
fraction: 0
rounding: 0
positive:
negative: -
decimal: .
grouping: ,

Особенности Windows Phone 8

  • Свойство pattern не поддерживается и возвращает пустую строку.

  • Свойство fraction не поддерживается и возвращает ноль.

Особенности Windows

  • Свойство pattern не поддерживается и возвращает пустую строку.

Особенности браузера

  • getNumberPattern поддерживается только в Chrome; единственное определённое свойство — pattern.

navigator.globalization.isDayLightSavingsTime

Указывает, действует ли летнее время для заданной даты с использованием часового пояса и календаря клиента.

navigator.globalization.isDayLightSavingsTime(date, successCallback, errorCallback);

Описание

Указывает, действует ли летнее время в successCallback с объектом properties в качестве параметра. Этот объект должен содержать свойство dst со значением Boolean . Значение true указывает, что летнее время действует для заданной даты, а false указывает, что оно не действует.

Входной параметр date должен быть типа Date.

Если при чтении даты возникнет ошибка, errorCallback выполнится. Ожидаемый код ошибки — GlobalizationError.UNKNOWN_ERROR.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

В летнее время, если браузер настроен на часовой пояс с DST, должно отобразиться всплывающее диалоговое окно с текстом, подобным dst: true.

navigator.globalization.isDayLightSavingsTime(
    new Date(),
    function (date) {alert('dst: ' + date.dst + '\n');},
    function () {alert('Error getting names\n');}
);

navigator.globalization.numberToString

Возвращает число, отформатированное в виде строки в соответствии с пользовательскими настройками клиента.

navigator.globalization.numberToString(number, successCallback, errorCallback, options);

Описание

Возвращает отформатированную строку числа в обратный вызов successCallback с объектом properties в качестве параметра. Этот объект должен содержать свойство value со значением String.

Если при форматировании числа произошла ошибка, вызывается обратный вызов errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки GlobalizationError.FORMATTING_ERROR.

Параметр options является необязательным и имеет следующие значения по умолчанию:

{type:'decimal'}

Значение options.type может быть decimal, percent, или currency.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

При настройке браузера на локаль en_US отображается всплывающее диалоговое окно с текстом, подобным number: 3.142.

navigator.globalization.numberToString(
    3.1415926,
    function (number) {alert('number: ' + number.value + '\n');},
    function () {alert('Error getting number\n');},
    {type:'decimal'}
);

Особенности Windows

  • Windows 8.0 не поддерживает округление чисел, поэтому значения не будут округляться автоматически.

  • В Windows 8.1 и Windows Phone 8.1 дробная часть числа типа percent усекается вместо округления, поэтому количество дробных цифр устанавливается в 0.

  • Числа percent не группируются, так как их нельзя проанализировать в строке stringToNumber, если они сгруппированы.

Особенности браузера

  • Тип currency не поддерживается.

navigator.globalization.stringToDate

Парсит дату, отформатированную в виде строки, в соответствии с пользовательскими настройками клиента и календарем, используя часовой пояс клиента, и возвращает соответствующий объект даты.

navigator.globalization.stringToDate(dateString, successCallback, errorCallback, options);

Описание

Возвращает дату в обратный вызов properties с объектом properties в качестве параметра. Этот объект должен содержать следующие свойства:

  • year: Год в формате ГГГГ. (Число)

  • month: Месяц от (0 до 11). (Число)

  • day: День от (1 до 31). (Число)

  • hour: Час от (0 до 23). (Число)

  • minute: Минута от (0 до 59). (Число)

  • second: Секунда от (0 до 59). (Число)

  • millisecond: Миллисекунды (от 0 до 999), недоступны на всех платформах. (Число)

Входящий параметр dateString должен быть типа String.

Параметр options является необязательным и имеет следующие значения по умолчанию:

{formatLength:'short', selector:'date and time'}

Значение options.formatLength может быть short, medium, long, или full. Значение options.selector может быть date, time или date and time.

Если при парсинге строки даты произошла ошибка, то вызывается обратный вызов errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки GlobalizationError.PARSING_ERROR.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows
  • Браузер

Пример

При настройке браузера на локаль en_US отображается всплывающее диалоговое окно с текстом, подобным month:8 day:25 year:2012. Обратите внимание, что целое число месяца на один меньше, чем в строке, так как целое число месяца представляет собой индекс массива.

navigator.globalization.stringToDate(
    '9/25/2012',
    function (date) {alert('month:' + date.month +
                           ' day:'  + date.day   +
                           ' year:' + date.year  + '\n');},
    function () {alert('Error getting date\n');},
    {selector: 'date'}
);

Особенности Windows Phone 8

  • Вариант formatLength поддерживает только значения short и full.

  • Шаблон для выбора 'даты и времени' всегда имеет полный формат даты и времени.

  • Входящий параметр dateString должен быть сформирован в соответствии с шаблоном, возвращаемым getDatePattern. Этот шаблон может не полностью соответствовать ICU в зависимости от пользовательской локали.

Особенности Windows

  • Вариант formatLength поддерживает только значения short и full.

  • Шаблон для выбора 'даты и времени' всегда имеет полный формат даты и времени.

  • Входящий параметр dateString должен быть сформирован в соответствии с шаблоном, возвращаемым getDatePattern. Этот шаблон может не полностью соответствовать ICU в зависимости от пользовательской локали.

Особенности браузера

  • Поддерживается только 79 локалей, потому что в этом методе используется момент.js.

  • Входящая строка должна соответствовать выходному формату dateToString и может не полностью соответствовать ICU в зависимости от пользовательской локали.

  • Выбиратель time поддерживает только форматы full и short.

navigator.globalization.stringToNumber

Парсит число, отформатированное в виде строки в соответствии с пользовательскими настройками клиента, и возвращает соответствующее число.

navigator.globalization.stringToNumber(string, successCallback, errorCallback, options);

Описание

Возвращает число в обратный вызов successCallback с объектом properties в качестве параметра. Этот объект должен содержать свойство value со значением Number.

Если при парсинге строки числа произошла ошибка, то вызывается обратный вызов errorCallback с объектом GlobalizationError в качестве параметра. Ожидаемый код ошибки GlobalizationError.PARSING_ERROR.

Параметр options является необязательным и имеет следующие значения по умолчанию:

{type:'decimal'}

Значение options.type может быть decimal, percent, или currency.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • iOS
  • Windows Phone 8
  • Windows

Пример

При настройке браузера на локаль en_US должно отобразиться всплывающее диалоговое окно с текстом, подобным number: 1234.56.

navigator.globalization.stringToNumber(
    '1234.56',
    function (number) {alert('number: ' + number.value + '\n');},
    function () {alert('Error getting number\n');},
    {type:'decimal'}
);

Особенности Windows Phone 8

  • В случае типа percent возвращаемое значение не делится на 100.

Особенности Windows

  • Строка должна строго соответствовать формату локали. Например, символ процента должен быть отделён пробелом для локали 'en-US', если параметр типа 'percent'.

  • Числа percent не должны быть сгруппированы для правильного парсинга.

GlobalizationError

Объект, представляющий ошибку из API Globalization.

Свойства

  • code: Один из следующих кодов, представляющих тип ошибки (Число)
    • GlobalizationError.UNKNOWN_ERROR: 0
    • GlobalizationError.FORMATTING_ERROR: 1
    • GlobalizationError.PARSING_ERROR: 2
    • GlobalizationError.PATTERN_ERROR: 3
  • message: Текстовое сообщение, которое включает объяснение и/или детали ошибки. (Строка)

Описание

Этот объект создаётся и заполняется Cordova и возвращается в обратный вызов в случае ошибки.

Поддерживаемые платформы

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 8
  • Windows

Пример

Когда выполняется следующий обратный вызов ошибки, отображается всплывающее диалоговое окно с текстом, подобным code: 3 и message:.

function errorCallback(error) {
    alert('code: ' + error.code + '\n' +
          'message: ' + error.message + '\n');
};

© 2012, 2013, 2015 The Apache Software Foundation
Licensed under the Apache License 2.0.
https://cordova.apache.org/docs/en/7.x/reference/cordova-plugin-globalization/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API