На самом деле вы можете сделать это только с усами, но для случая ваш JSON содержит не только число, но и массив значений вместе с размером массива:
var json = {
'rows': ['a','b','c'],
'numRows': function() {
return this.rows.length
}
} // ajax response data json.
Для этого вы можете использовать один из следующих шаблонов усов:
В простом случае, когда вам просто нужно добавить «s» для множественного числа:
var myTemplate = '{{ numRows }} link{{^rows}}s{{/rows}}{{#rows.1}}s{{/rows.1}} parsed so far.'
Результат:
0 links parsed so far.
1 link parsed so far.
2 links parsed so far.
В общем случае, когда множественное число является особенным (как человек / человек):
var myTemplate2 = '{{ numRows }} {{^rows}}people{{/rows}}{{#rows.0}}{{^rows.1}}person{{/rows.1}}{{/rows.0}}{{#rows.1}}people{{/rows.1}} joined so far.'
Результат:
0 people joined so far.
1 person joined so far.
2 people joined so far.
Здесь вы можете найти оба применяемых на практике шаблона:
http://jsfiddle.net/H8tqn/9/
P.S. Я снова напишу здесь, если смогу найти решение для этого:
No people joined so far.
1 person joined so far.
2 people joined so far.