2013-06-21 5 views
0

Это мой объект json. Я хочу получить его предупреждение без порядка массива, например [0], [1].Получите значение от объекта json без подсчета числа массива

var jsononj = { 
    "objnew" : 
    [{testarry: "thi is my demo text" }, 
{testarry2: "thi is my demo text2" } 
] }; 

    } 

var newtest = jsononj.objnew[0].testarry; 
    alert(newtest); 

Я хочу предупредить без [0]. как я этого добиться

+2

Что беспокоит вас с '[0]'? У вас есть массив с 2 элементами, и вы хотите показать некоторую информацию из первого элемента. Как вы ожидаете, что это произойдет, не сообщив системе, что вы хотите использовать элемент * first *? Javascript не настолько умный, чтобы читать ваши мысли. –

+0

этот порядок может быть перестроен в любое время, но «ключ» останется тем же, что и причина. – supersaiyan

+0

Где вы видели * ключ *? В примере, который вы показали, я могу видеть только сообщение. Понимаете, это то, что происходит, когда вы не рассказываете нам все и не показываете свой реальный код и реальную проблему. –

ответ

1

Я думаю, что это то, что вы ищете:

var i; 
for (i = 0; i < jsonobj.objnew.length; i++) { 
    if (jsonobj.objnew[i].testarry) { 
     alert(jsonobj.objnew[i].testarry); 
    } 
} 
+1

var i нужен? Я не понимаю смысла. Где вы используете этот индекс? – Edorka

+0

К сожалению, совершил ошибку. Забыл '[i]'. – elslooo

0

делает var firstOne = jsononj.objnew[0];

, но если вы просто не нравится [0] через ваши линии, продлить прототип массива

Array.prototype.first = function() { 
    return this[0]; 
}; 
var newtest = jsononj.objnew.first().testarry; 
alert(newtest); 
более

информация на First element in array - jQuery

+2

Вы обманываете, вы все еще использовали '[0]'. –

+0

Я добавил еще один вариант – Edorka

+0

@DarinDimitrov lol – andlrc

0

Этом это просто глупо, но я удалил [0]

var jsononj = { 
    "objnew" : [ 
     {testarry: "thi is my demo text" }, 
     {testarry2: "thi is my demo text2" } 
    ] 
}; 

var a = jsononj.objnew.shift(); 
alert(a.testarry); 
jsononj.objnew.unshift(a); 
+0

hahaha Мне нужно немного лучше подойти :-) – supersaiyan

0

Это не JSON, это объект Javascript. JSON - текстовый формат для представления данных.

Если вы хотите посмотреть на объект с определенным свойством, перебрать объектов в массиве и проверять его:

var newtest = null; 
for (var i = 0; i < jsononj.objnew.length; i++) { 
    var obj = jsononj.objnew[i]; 
    if (obj.hasOwnProperty('testarry') { 
    newtest = obj.testarry; 
    break; 
    } 
} 
if (newtest != null) { 
    // found one 
}