2015-07-23 5 views
1
ids_nn 
["50348", "18646", "17963", "18184", "30703", "18016", "23225"] 

Как сделать:новообращенного массив чисел, строки в массив чисел

[50348, 18646, 17963, 18184, 30703, 18016, 23225] 

Я прочитал эти два SO сообщений:

How to convert all elements in an array to integer in JavaScript?

convert string into array of integers

Итак, я попробовал:

var bla = ids_nn.map(function (x) { return parseInt(x, 10}) 
VM4765:2 Uncaught SyntaxError: Unexpected token }message: "Unexpected token }"stack: (...)get stack: function() { [native code] }set stack: function() { [native code] }__proto__: ErrorVM3550:847 InjectedScript._evaluateOnVM3550:780 InjectedScript._evaluateAndWrapVM3550:646 InjectedScript.evaluate 

и

var bla = ids_nn.split(',').map(Number) 
VM4648:2 Uncaught TypeError: undefined is not a function 
+0

Ваша первая попытка просто имеет недостающий ')' для метод parseInt. Кроме того, это просто отлично. – Jamiec

+0

Дох! Спасибо, принимая ответ в ближайшее время –

+0

Что неясно о «VM4765: 2 Uncaught SyntaxError: Неожиданный токен»?? – amiuhle

ответ

0

Это работает для меня

var bla = ids_nn.map(function (x) { return parseInt(x) }); 

Вы имели ошибку с} и), но в любом случае вы не должны проходить по основанию

+0

Спасибо, читаю документацию только сейчас. Не поймите, почему нет, мне нужно указать десятичное число с 10? –

+1

Если параметр Radix опущен, JavaScript принимает следующее: В ParseInt документации W3Schools я вижу: Если строка начинается с «0x», основание равно 16 (шестнадцатеричное) Если строка начинается с «0» , радиус равен 8 (восьмеричный). Эта функция устарела Если строка начинается с любого другого значения, то радиус равен 10 (десятичный) http://www.w3schools.com/jsref/jsref_parseint.asp – Balder

+0

Таким образом, вам нужно было указать базу, только если ваш номер начинается с 0x, как «0x123A», что означает, что вы хотели его в шестнадцатеричном формате – Balder

0

Изменить его в

var bla = ids_nn.map(function (x) { return parseInt(x, 10)}) 
VM4765:2 Uncaught SyntaxError: Unexpected token }message: "Unexpected token }"stack: (...)get stack: function() { [native code] }set stack: function() { [native code] }__proto__: ErrorVM3550:847 InjectedScript._evaluateOnVM3550:780 InjectedScript._evaluateAndWrapVM3550:646 InjectedScript.evaluate 
0
var bla = ids_nn.map(function (x) { return parseInt(x, 10}) 

так близко - вот что вы должны сделали

var bla = ids_nn.map(function (x) { return parseInt(x, 10)}) 

один) недостающую

Смежные вопросы