2014-09-01 72 views
-1

我是相当新的JavaScript,我想更新数组中的元素。我有点刺痛了这里的代码。元素没有正确更新

变量^^

$('#button2').click(function() { 
    array.push([(Range/N),100]); 
    array.sort(); 
    chart.series[0].setData(array); 
    N=N+1; 

    for (var i = 0; i < array.length; i++) { 
    array[i] = [(((i+1)*Range)/N), 100]; 
    array.sort(); 
    chart.series[0].setData(array); 
    i = i+1; 
    alert(array); 
    } 

}); 

但由于某些原因,该元素不正确地更新,我得到这个:

[10:33:48.782] [{x:64, y:100}, {x:64, y:100}, {x:64, y:100}] 

[10:33:50.053] [{x:48, y:100}, {x:48, y:100}, {x:48, y:100}, {x:64, y:100}] 

[10:33:52.994] [{x:64, y:100}, {x:64, y:100}, {x:64, y:100}, {x:64, y:100}, {x:64, y:100}] 

[10:33:55.588] [{x:53.333333333333336, y:100}, {x:53.333333333333336, y:100}, {x:53.333333333333336, y:100}, {x:53.333333333333336, y:100}, {x:53.333333333333336, y:100}, {x:64, y:100}] 

[10:33:57.721] [{x:64, y:100}, {x:64, y:100}, {x:64, y:100}, {x:64, y:100}, {x:64, y:100}, {x:64, y:100}, {x:64, y:100}] 

[10:33:59.298] [{x:56, y:100}, {x:56, y:100}, {x:56, y:100}, {x:56, y:100}, {x:56, y:100}, {x:56, y:100}, {x:56, y:100}, {x:64, y:100}] 

发生了什么事?

+0

尝试使用'console.log',而不是'alert'和在控制台中查看结果。 – dashtinejad 2014-09-01 09:10:23

+0

为什么在每一步中对'array'进行排序? – raina77ow 2014-09-01 09:10:29

+0

@ROX好吧谢谢你我生病了试试:) – Danazar 2014-09-01 09:12:31

回答

0

尝试使用这样的:EDITED

var result = ''; 
for (var property in object) {// object is your array 
    result += property + ': ' + object[property]+'; '; 
} 
alert(result); 

的更多详情,请浏览:How can I display a JavaScript object?

+0

Ohhh好吧生病尝试吧 – Danazar 2014-09-01 09:22:11

+0

它警告你哪里没有得到。 – 2014-09-01 09:22:24

+0

等待忽略整个元素值的变化... – Danazar 2014-09-01 09:24:15

0

固定

$('#button2').click(function() { 
    array.push([(Range),100]); 
    array.sort(); 
    N=N+1; 

    for (var i = 0; i < array.length; i++) { 
    newrange = i*Range/N; 
array[i] = [newrange, 100]; 
    } 
chart.series[0].setData(array); 
console.log(array); 
    });