2015-09-18 2 views
1

Как получить значения массива в глобальную переменную?Как получить значения массива в глобальную переменную

var p = new Array(); 
var all_Y_values = 0; 
for (var r = 0; r < embeddedCells.length; r++) 
{ 
    p[r] = embeddedCells[r].attributes.position.y; 
    all_Y_values = p[r], all_Y_values; 
    console.log("all y values: " + all_Y_values); //prints all values 
} 
console.log("all y values: " + all_Y_values); //prints only last value 

Прямо сейчас внутри цикла я могу напечатать все значения внутри цикла, но когда я печатаю тот же внешний контур его печать только последнее значение.

+0

'all_Y_values ​​= p [r], all_Y_values;' анализируется как '(all_Y_values ​​= p [r]), all_Y_values;', что эквивалентно 'all_Y_values ​​= p [r]; all_Y_values; ', который эквивалентен' all_Y_values ​​= p [r]; '. – melpomene

+0

, если вы хотите, чтобы все значения были в all_Y_values, сделайте его строкой и соедините их – Vamsi

+0

Или просто используйте 'p', который уже является массивом, содержащим все ваши значения. – melpomene

ответ

3

Ваша коллекция ценностей уже внутри «р»:

var p = new Array(); 
var all_Y_values = 0; 
for (var r = 0; r < embeddedCells.length; r++) { 
    p[r] = embeddedCells[r].attributes.position.y; 
    console.log("current y value: " + p[r]); //prints current value 
} 
console.log("all y values: " + p.join(',')); 

ps : p и all_Y_values ​​не являются глобальными, а локальными переменными. Только в javascript функция создает новый контекст. Циклы - нет.

+0

Спасибо. Я могу распечатать значения сейчас. Я хочу скрывать эти значения в массиве. Как мне это сделать? – Satyadev

+0

У вас уже есть значения, хранящиеся в массиве p –

2

Это должно печатать все Y значения в конце (пс: новая версия с использованием Foreach)

var p = new Array(); 
embeddedCells.forEach (function (e, i) { 
    p[i] = e.attributes.position.y; 
    console.log("current y value: " + p[i]); //prints current value 
}); 
console.log("all y values: " + p.join(", ")); 

Надеется, что это работает

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