// Copyright (C) 2017 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only /*! \qmltype Number \inqmlmodule QtQml \brief The Number object provides represents a number value. The QML Number object extends the JS Number object with locale aware functions. \sa {QtQml::Locale}{Locale} */ /*! \qmlmethod string Number::toLocaleString(locale,format,precision) Converts the Number to a string suitable for the specified \a locale in the specified \a format, with the specified \a precision. Valid formats are: \list \li 'f' Decimal floating point, e.g. 248.65 \li 'e' Scientific notation using e character, e.g. 2.4865e+2 \li 'E' Scientific notation using E character, e.g. 2.4865E+2 \li 'g' Use the shorter of e or f \li 'G' Use the shorter of E or f \endlist If precision is not specified, the precision will be 2. If the format is not specified 'f' will be used. If \a locale is not specified, the default locale will be used. The following example shows a number formatted for the German locale: \qml import QtQuick 2.0 Text { text: "The value is: " + Number(4742378.423).toLocaleString(Qt.locale("de_DE")) } \endqml You can customize individual fields of the \a{locale} to tightly control the output: \qml let locale = Qt.locale("de_DE"); let a = Number(1000).toLocaleString(locale)); // a == 1.000,00 locale.numberOptions = Locale.OmitGroupSeparator; let b = Number(1000).toLocaleString(locale)); // b == 1000,00 \endqml You can apply toLocaleString() directly to constants, provided the decimal is included in the constant, e.g. \qml 123.0.toLocaleString(Qt.locale("de_DE")) // OK 123..toLocaleString(Qt.locale("de_DE")) // OK 123.toLocaleString(Qt.locale("de_DE")) // fails \endqml \sa {QtQml::Locale}{Locale} */ /*! \qmlmethod string Number::toLocaleCurrencyString(locale,symbol) Converts the Number to a currency using the currency and conventions of the specified \a locale. If \a symbol is specified it will be used as the currency symbol. \sa Locale::currencySymbol() */ /*! \qmlmethod string Number::fromLocaleString(locale,number) Returns a Number by parsing \a number using the conventions of the supplied \a locale. If \a locale is not supplied the default locale will be used. For example, using the German locale: \qml var german = Qt.locale("de_DE"); var d; d = Number.fromLocaleString(german, "1234,56") // d == 1234.56 d = Number.fromLocaleString(german, "1.234,56") // d == 1234.56 d = Number.fromLocaleString(german, "1234.56") // throws exception d = Number.fromLocaleString(german, "1.234") // d == 1234.0 \endqml \sa {QtQml::Locale}{Locale} */