Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.06.2011, 23:07
Новичок на форуме
Отправить личное сообщение для winson Посмотреть профиль Найти все сообщения от winson
 
Регистрация: 22.06.2011
Сообщений: 2

проблема с переводом строки в число
собственно САБЖ.... убил несколько дней - понять не могу... на JS раньше не кодил.

var sum = 0, w = 0;
function updlst(){

$('#ingrlist tbody').find("#sum").remove();
$('#ingrlist tbody').each(function(){
sum = + parseInt($(this).find(".p").text());
w = + parseInt($(this).find(".w").text());
}).append('<tr id="sum"><td>Итого:</td><td>'+w+'</td><td>'+sum+'</td></tr>');
};

в итоге получаю: 150+20+30+50 = 150203050, а не 250

parseInt куда только не вставлял.... строго не судите, помогите плиз

Последний раз редактировалось winson, 23.06.2011 в 07:55.
Ответить с цитированием
  #2 (permalink)  
Старый 22.06.2011, 23:28
Интересующийся
Отправить личное сообщение для reutovo Посмотреть профиль Найти все сообщения от reutovo
 
Регистрация: 09.11.2008
Сообщений: 22

Попробуйте Number() вместо parseInt. Или Number(parseInt(ваш_код))
Ответить с цитированием
  #3 (permalink)  
Старый 23.06.2011, 00:00
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Сообщение от winson
убил несколько дней - понять не могу
Не верю. Невозможно потратить столько времени на перевод строки в число.
Сообщение от reutovo
Или Number(parseInt(ваш_код))
Бред. parseInt(x) === Number(parseInt(x)) при любом x.
Ответить с цитированием
  #4 (permalink)  
Старый 23.06.2011, 00:32
Интересующийся
Отправить личное сообщение для reutovo Посмотреть профиль Найти все сообщения от reutovo
 
Регистрация: 09.11.2008
Сообщений: 22

Сообщение от Sweet Посмотреть сообщение
Не верю. Невозможно потратить столько времени на перевод строки в число.
Бред. parseInt(x) === Number(parseInt(x)) при любом x.
Признаю, промахнулся.
Ответить с цитированием
  #5 (permalink)  
Старый 23.06.2011, 07:36
Новичок на форуме
Отправить личное сообщение для winson Посмотреть профиль Найти все сообщения от winson
 
Регистрация: 22.06.2011
Сообщений: 2

Цитата:
Не верю.
Так оно и было... Гуглил, читал, пробовал, снова гуглил, снова читал, но ответов так и не было найдено

теперь совсем ничего не понимаю... Вместо "w" на выводе написал "typeof w", оказалось переменная уже number, но складывает по прежнему как строку

Последний раз редактировалось winson, 23.06.2011 в 07:59.
Ответить с цитированием
  #6 (permalink)  
Старый 23.06.2011, 10:32
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от winson
в итоге получаю: 150+20+30+50 = 150203050, а не 250
Бивас, тест...

var a='150 слонов'
var b='20 тюков'
var c='30 ящиков'
var d='50 погонщиков'
a=parseInt(a)
b=parseInt(b)
c=parseInt(c)
d=parseInt(d)
var summa=a+b+c+d
alert(summa)

Последний раз редактировалось ksa, 23.06.2011 в 10:35.
Ответить с цитированием
  #7 (permalink)  
Старый 23.06.2011, 11:10
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Я думаю, что имеет смысл сделать так
sum += parseInt...
вместо
sum = + parseInt...
Ответить с цитированием
  #8 (permalink)  
Старый 23.06.2011, 11:35
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Sweet, так это смотря в каком контексте скрипта смотреть...
Ответить с цитированием
  #9 (permalink)  
Старый 23.06.2011, 11:46
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Сообщение от ksa
смотря в каком контексте скрипта смотреть
В контексте суммирования. В контекте приведения к числу чем +parseInt(x) отличается от Number(parseInt(x)) в плане осмысленности?
Ответить с цитированием
  #10 (permalink)  
Старый 23.06.2011, 14:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Sweet, я к тому, что присваение не то, что присвоение с суммированием...
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выделение строки в таблице posta ExtJS 5 23.06.2011 12:31
Выбрать число из строки Nihisil Общие вопросы Javascript 4 09.03.2011 08:49
Как вынуть из строки число Drakonee Общие вопросы Javascript 2 11.09.2010 16:06
Разбить число на миссив, как ? Bogdan808 Общие вопросы Javascript 20 01.09.2010 18:19
Проблема с Popup окном vovuslik jQuery 5 12.06.2010 16:12