2016-09-06 2 views
0

У меня есть массив объектов следующегоИзменения типа данных в массиве объектов

Object {Results:Array[2]} 
    Results:Array[2] 
    [0-1] 
     0:Object 
      id=1  
      name: "Rick" 
      Value: "34343" 
     1:Object 
      id=2  
      name:'david' 
      Value: "2332" 

Как вы можете видеть, поле Значения в массиве объектов является строкой. Я хочу, чтобы все они были преобразованы в число вместо.

Окончательные данные должны быть такими. может кто-то дать мне знать, как этого добиться, пожалуйста.

Object {Results:Array[2]} 
    Results:Array[2] 
    [0-1] 
     0:Object 
      id=1  
      name: "Rick" 
      Value: 34343 
     1:Object 
      id=2  
      name:'david' 
      Value: 2332 

ответ

0

Вы можете преобразовать число буквального в ряд, используя + префикс:

var input = { 
 
    Results: [{ 
 
    id: 1, 
 
    name: "Rick", 
 
    Value: "34343" 
 
    }, { 
 
    id: 2, 
 
    name: 'david', 
 
    Value: "2332" 
 
    }] 
 
} 
 

 
for (var i = 0; i < input.Results.length; i++) { 
 
    input.Results[i].Value = +input.Results[i].Value; 
 
} 
 

 
console.log(input);

0

Вы можете сопоставить data.Results и использовать parseInt() на свойства Значение:

data.Results = data.Results.map(function(d) { 
    d.Value = parseInt(d.Value, 10); 
    return d; 
}); 

console.log(data); 

Однако зачем вам это нужно? Возможно, вам стоит подумать о синтаксическом анализе, как только вы действительно получите доступ к данным ...

1

Просто позвоните в .parseInt() в каждое из полей «Значение». Например: `

for(var i in Results){ 
    if(Results[i].Value != ""){ 
     Results[i].Value = parseInt(Results[i].Value); 
    }` 
} 
0

Если вы можете сделать это в основной способ, это будет выглядеть следующим образом:

function convertArrayValues (array) { // obj.Results goes here 
    // cloning can be ommited 
    var array = JSON.parse(JSON.stringify(array)); 
    for(var i = 0; i < array.length; i++) { 
    array[i].Value = parseFloat(array[i].Value); 
    } 
    return array; 
} 
Смежные вопросы