Этот шаблон использует Lua : |
Примечание. Добавление data-sort-type="number" в соответствующий заголовок столбца решает многие проблемы числовой сортировки. См. Раздел « Справка: сортировка» . |
Этот шаблон может быть полезен при построении сортируемой таблицы, в которой столбец содержит как числа, так и текст. Этот шаблон следует применять к каждому числу в столбце и не следует использовать за пределами сортируемых таблиц.
В настоящее время шаблон работает для чисел от −10 308 до 10 308 . Числа вне этого диапазона будут отсортированы выше или ниже других чисел в зависимости от знака. См. Раздел « Ограничения » ниже.
По умолчанию вывод отображается с использованием разделителей тысяч. Чтобы отображать числа в том виде, в каком они были введены, используйте |format=no
.
Шаблон генерирует скрытый «ключ сортировки» в разметке HTML, который заставляет алгоритм сортировки JavaScript сортировать столбец в алфавитном порядке.
Цель
Этот шаблон может быть полезен в двух случаях:
- Когда за числами следует какой-то текст
- Когда числам предшествует какой-либо текст, кроме символа валюты.
Параметры
В шаблоне есть только один обязательный параметр: действительное число. В этих примерах для краткости используется имя перенаправления {{ nts }}.
- Необязательные параметры
prefix
: Чтобы отобразить текст перед числом, используйте|prefix=some prefix
{{nts|123456789.00123|prefix=approx. }}
→ прибл. 123 456 789,00123
format
: Для неформатированного вывода используйте|format=no
{{nts|123456789.00123}}
→ 123 456 789,00123{{nts|123456789.00123|format=no}}
→ 123456789.00123
debug
: Чтобы отобразить ключ сортировки, используйте|debug=yes
.{{nts|123456789.00123|debug=yes}}
→ 7008123456789001230 ♠ 123 456 789,00123{{nts|-123456789.00123|debug=yes}}
→ 2991876543210998770 ♠ −123,456,789,00123
Помимо добавленных разделителей тысяч, числа отформатированы в соответствии с предоставленным форматом (научная запись или нет, начальные и конечные нули, а также ноль перед десятичной точкой или нет). Это форматирование не влияет на порядок сортировки, за исключением чисел, не удовлетворяющих указанным ниже ограничениям.
TemplateData для сортировки числовой таблицы
Параметр | Описание | Тип | Статус | |
---|---|---|---|---|
Число | 1 | Твой номер | Число | обязательный |
Форматировать вывод? | format | Если вы не хотите, чтобы вывод был отформатирован (т.е. разделен разделителями тысяч), пожалуйста, укажите «нет» в этом поле. (Без кавычек.) | Нить | по желанию |
Отлаживать | debug | Если установлено "да", выводит данные для отладки. | Нить | по желанию |
Приставка | prefix | Префикс, который будет отображаться перед номером. Например, «Прибл.» или "$" | Нить | по желанию |
Ключ сортировки
Ключ сортировки - это девятнадцатизначное число. Для чисел в пределах диапазона первые четыре цифры определяются знаком числа и порядком величины, а следующие пятнадцать цифр определяются знаком и значимостью числа .
- Числа в пределах диапазона
- Для чисел от 10 -308 до 10 308 первые четыре цифры вычисляются путем прибавления 7000 к порядку величины, а следующие пятнадцать цифр вычисляются путем умножения мантиссы на 10 14 .
- Для чисел между -10-308 и -10 308 первые четыре цифры вычисляются путем вычитания порядка величины из 2999, а следующие пятнадцать цифр вычисляются путем вычитания значимости из 10 и умножения разницы на 10 14 .
- Ключ сортировки для 0 - 5000000000000000000.
- Номера вне допустимого диапазона
- Номерам больше 10 308 назначается ключ сортировки 9000000000000000000.
- Числам меньше -10 308 назначается ключ сортировки 1000000000000000000.
- Числам от 10 -308 до 0 или от 0 до -10-308 назначается ключ сортировки 5000000000000000000.
Ограничения
- Любое подмножество чисел больше 10 308 сортируются вместе.
- Любое подмножество чисел меньше -10 308 сортируется вместе.
- Любое подмножество чисел от 10 -308 до -10-308 сортируется вместе.
- Если в качестве первого безымянного параметра задано нечисловое значение, результаты не определены.
- Знак дефиса минус преобразуется в истинный знак минус; учтите, однако, что это означает, что возможно не более 12 значащих цифр.
- Префикс (использующий
prefix
параметр) не влияет на порядок сортировки.
Примеры
{{nts|123456789.00123}}
→ 7008123456789001230 ♠ 123 456 789,00123
Текст, следующий за числом, {{nts|123,456}} as of 2012
отображается 123,456 as of 2012
с цифровым ключом сортировки 123456
. Это принудительно выполняет числовую сортировку в ячейке с использованием этого значения вместо алфавитной сортировки по умолчанию.
Ниже приведены другие примеры, некоторые из которых иллюстрируют перечисленные выше ограничения.
разметка | ключ сортировки и номер | распространение ошибки |
---|---|---|
{{nts|debug=yes}} | 1000000000000000000 ♠ | |
{{nts||debug=yes}} | 1000000000000000000 ♠ | |
{{nts|between 2 and 3|debug=yes}} | 1000000000000000000 ♠ от 2 до 3 | |
{{nts|between 2 and 3|debug=no}} | от 2 до 3 | |
{{nts|10|prefix=approx.{{sp}}|debug=yes}} | 7001100000000000000 ♠ ок. 10 | |
{{nts|-5|debug=yes}} | 2999500000000000000 ♠ −5 | |
{{nts|-4|debug=yes}} | 2999600000000000000 ♠ −4 | |
{{nts|-73|debug=yes}} | 2998270000000000000 ♠ −73 | |
{{nts|-67|debug=yes}} | 2998330000000000000 ♠ −67 | |
{{nts|-20345678901234567.12345678|debug=yes}} | 2983796543210987654 ♠ −2,0 345678901235 × 10 16 | |
{{nts|123.456e3|debug=yes}} | 7005123456000000000 123 456 | |
{{nts|123.456e2|debug=yes}} | 7004123456000000000 ♠ 12 345,6 | |
{{nts|20345678901234567.12345678|debug=yes}} | 7016203456789012345 ♠ 2,0 345678901235 × 10 16 | |
{{nts|100345678901234567.12345678|debug=yes}} | 7017100345678901234 ♠ 1.0034567890123 × 10 17 | |
{{nts|1234567890123456.12345678|debug=yes}} | 7015123456789012345 ♠ +1,2345678901235 × 10 15 | |
{{nts|234567890123456.12345678|debug=yes}} | 7014234567890123456 ♠ 2,3456789012346 × 10 14 | |
{{nts|34567890123456.12345678|debug=yes}} | 7013345678901234561 ♠ 3,4567890123456 × 10 13 | |
{{nts|4567890123456.12345678|debug=yes}} | 7012456789012345612 ♠ 4.5 678901234561 × 10 12 | |
{{nts|567890123456.12345678|debug=yes}} | 7011567890123456123 ♠ 5.6789012345612 × 10 11 | |
{{nts|67890123456.12345678|debug=yes}} | 7010678901234561234 ♠ 6.7890123456123 × 10 10 | |
{{nts|7890123456.12345678|debug=yes}} | 7009789012345612345 ♠ 7.8901234561235 × 10 9 | |
{{nts|890123456.12345678|debug=yes}} | 7008890123456123456 ♠ 890,123,456.12346000 | |
{{nts|90123456.12345678|debug=yes}} | 7007901234561234567 ♠ 90,123,456.12345700 | |
{{nts|0123456.12345678|debug=yes}} | 7005123456123456780 123 456.12345678 | |
{{nts|123456.12345678|debug=yes}} | 7005123456123456780 123 456.12345678 | |
{{nts|23456.12345678|debug=yes}} | 7004234561234567799 23 456,12 345678 | |
{{nts|3456.12345678|debug=yes}} | 7003345612345678000 3,456,12345678 | |
{{nts|456.12345678|debug=yes}} | 7002456123456780000 456.12345678 | |
{{nts|56.12345678|debug=yes}} | 7001561234567800000 ♠ 56.12345678 | |
{{nts|6.12345678|debug=yes}} | 7000612345678000000 6,12345678 | |
{{nts|.12345678|debug=yes}} | 6999123456780000000 ♠ 0,12345678 | |
{{nts|0.12345678|debug=yes}} | 6999123456780000000 ♠ 0,12345678 | |
{{nts|0.02345678|debug=yes}} | 6998234567800000000 ♠ 0,02345678 | |
{{nts|0.00345678|debug=yes}} | 6997345678000000000 ♠ 0,00345678 | |
{{nts|0.00045678|debug=yes}} | 6996456780000000000 ♠ 0,00045678 | |
{{nts|0.00005678|debug=yes}} | 6995567800000000000 ♠ 5,678 × 10 −5 | |
{{nts|0.00000678|debug=yes}} | 6994678000000000000 ♠ 6,78 × 10 −6 | |
{{nts|0.00000078|debug=yes}} | 6993780000000000000 ♠ 7,8 × 10 −7 | |
{{nts|0.00000008|debug=yes}} | 6992800000000000000 ♠ 8 × 10 −8 | |
{{nts|.00000008|debug=yes}} | 6992800000000000000 ♠ 8 × 10 −8 | |
{{nts|0|debug=yes}} | 5000000000000000000 ♠ 0 |
Смотрите также
- {{ Сортировка числовой таблицы скрыта }} - то же, что и в этом шаблоне, но не отображает (скрывает) число
- {{ val }} - отображает числа и количества с различными вариантами форматирования.
- {{ Convert }} - имеет возможность сортировки
- {{ Сортировка таблицы дат }}
- {{ Сортировка }}
- {{ Скрытый ключ сортировки }}