Elements of the array (Adding)
Привет всем!
Вопрос такой: Как сложить два элемента одного эрея ? Ниже часть моего кода: unction IdValidation(errMessages) { var entry1_info = mortgage.userId.value var entry1_chars = entry1_info.length var left = entry1_info[0] + entry1_info[1]; alert('The sum is '+ left + ''); if(entry1_chars < 10) { errMessages += ' <li>All 10 positions must be present.</li>\n'; } if(entry1_info[4] != '-') { errMessages += ' <li>Position 5 must be a hyphen (-).</li>\n'; } if(isNaN(entry1_info[0]) || isNaN(entry1_info[1]) || isNaN(entry1_info[2]) || isNaN(entry1_info[3]) || isNaN(entry1_info[5]) || isNaN(entry1_info[6]) || isNaN(entry1_info[7]) || isNaN(entry1_info[8]) || isNaN(entry1_info[9])) { errMessages += ' <li>Is not numberic.</li>\n'; } return errMessages; } Моя проблема заключается в том, что когда я складываю var left = entry1_info[0] + entry1_info[1]; ( Допустим [0] = 1 и [1] = 2 ) я получаю не 3 а 12. евал тот жэ результат выдает. Прошу помощи в решении этой проблемы. Спасибо. |
var left = +entry1_info[0] + +entry1_info[1]; У Вас складываются строки, а не числа. Унарный "+" приводит строку к числу: var a = "123"; alert(typeof +a); // number |
Очевидно, складывать нужно строки:
entry1_info = [1,2]; alert( '' + entry1_info[0] + entry1_info[1] ); |
Часовой пояс GMT +3, время: 05:15. |