JSON 데이터의 각 항목에는 어떠한 형식의 데이터든지 할당할
수 있기 때문에, 새로운 JSON데이터를 할당하여 각각의 JSON
데이터들이 하나의 그룹 안에서 계층을 형성하도록 구성할 수
있다.
let 계층이름 = {
하위객체이름 : { 이름 : 값, 이름 : 값 },
하위객체이름 : { 이름 : 값, 이름 : 값 }
}
let korea = {
"seoul" : { "people" : 54321, "desc" : "수도" },
"jaeju" : { "people" : 12345, "desc" : "섬" }
}
JSON데이터에서 하위 데이터로 접근하고자 할 경우에는
점(.)을 사용해 계층을 표현한다.
객체이름.하위객체이름.값의이름;
let description = korea.seoul.desc;
일반적인 배열
let 배열이름 = [1,2,3];
배열 원소를 JSON으로 변경
javascript는 변수의 데이터 타입이 유동적이기 때문에
배열의 원소 역시 다양한 형태의 값을 저장할 수 있다.
즉 JSON 객체도 배열의 원소가 될 수 있다.
let 객체이름 = [{...},{....},{...}];
let 객체이름 = [
{ "people" : 54321, "desc" : "수도" },
{ "people" : 12345, "desc" : "섬" }
];
배열 JSON의 데이터 접근
배열의 index를 통한 데이터 접근에는 변함이 없다.
객체이름[0].people;
객체이름[0].desc;
이벤트에 의해서 실행되는 함수 영역 안에서는 특수 키워드 this를
사용할 수 있다. 이 키워드를 jQueyr의 $()함수에 전달하면
이벤트가 발생한 자기 자신을 감지할 수 있다.
$("css셀렉터").이벤트함수(function(){
$(this)
});
나는 몇번째 요소인가?
-> 특정 객체에 대하여 index() 함수의 리턴값을 사용하면
자신이 속한 부모 태그 안에서 태그 종류의 구분 없이
자신이 몇 번쨰 요소인지를 알 수 있다.
-> index()함수는 요소를 0부터 카운드 한다.
-> 태그 종류에 상관 없이 무조건 부모 요소 안에서
몇 번째 항목인지를 판별한다.
HTML 태그 요소의 특정 속성값을 얻기 위해서는 attr()함수를
사용한다.
let 변수 = $("요소").attr("속성이름");
<img id="k" src="hello.png" >
let src = $("#k").attr("src");
src : hello.png
- HTML 태그 요소의 특정 속성값을 지정할 경우에도 attr()함수 사용
- $("요소").attr("속성이름","값");
- $("#k").attr("src", "world.png");
$("요소").attr({
"속성이름1" : "값",
"속성이름2" : "값",
"속성이름3" : "값"
});