@robie_bota: postaw debugger zaraz za generowaniem tego obiektu i zbadaj o co chodzi. Jak wyświetlasz jakiś obiekt to możesz wyświetlać go już "po fakcie", a kiedy próbujesz się odwołać do jednego z kluczy w tym obiekcie to może go tam najzwyczajniej w świecie nie być.
@robie_bota imo ten obiekt przyszedł do Ciebie jako string, jeśli z zewnętrznej apki (api czy coś). Stringa nie znajdziesz przez nazwastringa.klucz. Musisz go sparsować spowrotem na jsona. var newmin = JSON.parse(min); console.log(new_min.test); ewentualnie spróbuj ze stringify zamiast parse.
@iforgestuff: dzięki działa! a jak zrobić teraz z tego obiekt Object { test: 39.65, test1: 33.65, test2: 20.2 }? Próbuje coś takiego ale zamiast test1, test2, test, dostaje i var test3 ={}; for (var i in min){ console.log('key is '+i + ' value is '+min[i]); test3 = {i : min[i]}; } i tworzy mi tylko ostatnie pole tj 39.65
@iforgestuff: tak, ale doszedłem dlaczego na samym początku nie działało mi... bo zamiast console.log(min.test) powinienem uzyc console.log(min[' test']). Mam spacje przed test i dlatego nie moglem odwołać się do obiektu.
console.log(min);
to mi się wyswietla w konsoliObject { test: 39.65, test1: 33.65, test2: 20.2 }
ale jak robie
console.log(min.test);
to dostaje 'undefined' o co biega?#javascript
JSON.parse: unexpected character at line 1 column 2 of the JSON data
, ale znalazłem coś takiegofor (var i in min){
console.log('key is '+i + ' value is '+min);}
tylko teraz w konsoli dostaje cos takeigo
key is test1 value is [object Object]
key is test2 value is [object Object]
key is test value is [object Object]
a jak zrobić teraz z tego obiekt Object { test: 39.65, test1: 33.65, test2: 20.2 }?
Próbuje coś takiego ale zamiast
test1
,test2
,test
, dostajei
var test3 ={};
for (var i in min){
console.log('key is '+i + ' value is '+min[i]);
test3 = {i : min[i]};
}
i tworzy mi tylko ostatnie pole tj 39.65
bo zamiast
console.log(min.test)
powinienem uzycconsole.log(min[' test'])
. Mam spacje przedtest
i dlatego nie moglem odwołać się do obiektu.