Постоянно защищенный шаблон
Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Документация по шаблону [ просмотреть ] [ изменить ] [ история ] [ очистить ]

Этот шаблон может быть полезен при построении сортируемой таблицы, в которой столбец содержит как числа, так и текст. Этот шаблон следует применять к каждому числу в столбце и не следует использовать за пределами сортируемых таблиц.

В настоящее время шаблон работает для чисел от −10 308 до 10 308 . Числа вне этого диапазона будут отсортированы выше или ниже других чисел в зависимости от знака. См. Раздел « Ограничения » ниже.

По умолчанию вывод отображается с использованием разделителей тысяч. Чтобы отображать числа в том виде, в каком они были введены, используйте |format=no.

Шаблон генерирует скрытый «ключ сортировки» в разметке HTML, который заставляет алгоритм сортировки JavaScript сортировать столбец в алфавитном порядке.

Цель

Этот шаблон может быть полезен в двух случаях:

  1. Когда за числами следует какой-то текст
  2. Когда числам предшествует какой-либо текст, кроме символа валюты.

Параметры

В шаблоне есть только один обязательный параметр: действительное число. В этих примерах для краткости используется имя перенаправления {{ 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 для этого шаблона, используемого VisualEditor и другими инструментами; см. ежемесячный отчет об использовании параметров для этого шаблона.

TemplateData для сортировки числовой таблицы

Ключ сортировки

Ключ сортировки - это девятнадцатизначное число. Для чисел в пределах диапазона первые четыре цифры определяются знаком числа и порядком величины, а следующие пятнадцать цифр определяются знаком и значимостью числа .

Числа в пределах диапазона
  • Для чисел от 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. Это принудительно выполняет числовую сортировку в ячейке с использованием этого значения вместо алфавитной сортировки по умолчанию.

Ниже приведены другие примеры, некоторые из которых иллюстрируют перечисленные выше ограничения.

Смотрите также