Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 03.02.2013, 01:41
Интересующийся
Отправить личное сообщение для rixter Посмотреть профиль Найти все сообщения от rixter
 
Регистрация: 01.02.2013
Сообщений: 11

раз subtr это метод, то по всей видимости b_term объект. Что ж тогда "b" и можно ли с ней делать такое b.substr(-2)
Ответить с цитированием
  #12 (permalink)  
Старый 03.02.2013, 01:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

rixter,
substr работает со строками и возвращает строки
b_term строка это а чтобы она стала числом ставим впереди +
Ответить с цитированием
  #13 (permalink)  
Старый 03.02.2013, 01:56
Интересующийся
Отправить личное сообщение для rixter Посмотреть профиль Найти все сообщения от rixter
 
Регистрация: 01.02.2013
Сообщений: 11

рони,
спасибо за помощь и разъяснения, но + не помог. Правильная работа - отметил оценку, появилось сообщение "спасибо за участие" через 2 с новое сообщение "Рейтинг 5.0 (5 Голосов)". Сейчас зависает на "Спасибо за участие". Без + аналогично. Уже завтра буду разбираться, спать охота. Всего доброго!
Ответить с цитированием
  #14 (permalink)  
Старый 04.02.2013, 01:09
Интересующийся
Отправить личное сообщение для rixter Посмотреть профиль Найти все сообщения от rixter
 
Регистрация: 01.02.2013
Сообщений: 11

Вроде разобрался, может и велосипед получился, но работает . Может упростить как-то можно, ну и замечания бы.

var b = b + '';/*В строку*/
var b_term = b.substr(-2);
if (b_term > 10 && b_term < 15) {
	d=d+extravote_text[5].replace("%s",b);/*Голосов*/
} else {
	var b_term = b.substr(-1);
	if (b_term == 0 || b_term > 4) {
		d=d+extravote_text[5].replace("%s",b);/*Голосов*/
	}
	if (b_term == 1) {
		d=d+extravote_text[6].replace("%s",b);/*Голос*/
	}
	if (b_term > 1 && b_term < 5) {
		d=d+extravote_text[8].replace("%s",b);/*Голоса*/
	}
}
var b = +b;/*Обратно в число*/
Ответить с цитированием
  #15 (permalink)  
Старый 04.02.2013, 01:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

rixter,
есть функция для подобных дел и какие замечания если я незнаю ни де ни бе ни прочих е ))) заработало и хорошо!
Ответить с цитированием
  #16 (permalink)  
Старый 04.02.2013, 13:07
Интересующийся
Отправить личное сообщение для rixter Посмотреть профиль Найти все сообщения от rixter
 
Регистрация: 01.02.2013
Сообщений: 11

рони,
А что за функция?
Ответить с цитированием
  #17 (permalink)  
Старый 04.02.2013, 13:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

rixter,
http://translate.sourceforge.net/wiki/l10n/pluralforms
Ответить с цитированием
  #18 (permalink)  
Старый 04.02.2013, 13:40
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

var b = b + '';/*В строку*/
var b_term = +(b.substr(-2));
(function () {

	if (b_term > 10 && b_term < 15)return d=d+extravote_text[5].replace("%s",b);/*Голосов*/
	b_term = +(b.substr(-1));
	if (b_term == 0 || b_term > 4)return d=d+extravote_text[5].replace("%s",b);/*Голосов*/
	if (b_term == 1)return d=d+extravote_text[6].replace("%s",b);/*Голос*/
	if (b_term > 1 && b_term < 5)return d=d+extravote_text[8].replace("%s",b);/*Голоса*/

}());
var b = +b;/*Обратно в число*/

Последний раз редактировалось Deff, 04.02.2013 в 13:49.
Ответить с цитированием
  #19 (permalink)  
Старый 04.02.2013, 14:34
Интересующийся
Отправить личное сообщение для rixter Посмотреть профиль Найти все сообщения от rixter
 
Регистрация: 01.02.2013
Сообщений: 11

рони, Deff,
Спасибо!
Отличный форум! Смотрел также другие ветки, везде помощь, подсказки, конструктивная критика.
Ответить с цитированием
  #20 (permalink)  
Старый 04.02.2013, 14:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

rixter,
на закуску для самобразования Скрипт для создания словесной формы автор Riim,
и заодно функция склонения слов после цифры по формуле с http://translate.sourceforge.net/wiki/l10n/pluralforms
var plural = function (b) {
    return function (a) {
        return b[1 == a % 10 && 11 != a % 100 ? 0 : 2 <= a % 10 && 4 >= a % 10 && (10 > a % 100 || 20 <= a % 100) ? 1 : 2]
    }
};
var d = plural(['голос','голоса','голосов'])
//alert(d(5));
var a = [1,5,56,87,3,2,14,23,41,1090]
a = a.map(function (el)
{
   return el + " " + d(el)
})
alert(a.join('\n'));
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с таймером и окошком! xXapokalypsesXx Общие вопросы Javascript 4 07.06.2012 01:12
Помогите с наследованием develka Общие вопросы Javascript 1 06.06.2012 09:50
Помогите разобраться!!! Greendumb Общие вопросы Javascript 8 19.08.2010 14:04
Помогите! Многоуровневые вкладки! sergeeeeee Элементы интерфейса 2 02.08.2010 23:50
Помогите нубу Fongolcs Работа 34 19.05.2010 22:45