1. 배열
<script>
let values = [ "빨강", "노랑", "파랑", true, 20 ];
console.log(values);
console.dir(values);
console.log(values.length);
console.log(values["length"]);
values.push("검정");
values[values.length] = "하양";
console.log(values);
values[values.length + 10] = "보라";
console.log(values);
console.dir(values);
console.log(values[10]);
</script>
<script>
let values = [ "빨강", "노랑", "파랑", "초록" ];
console.log("방법1. 개별 요소 직접 참조");
console.log(values[0]);
console.log(values[1]);
console.log(values[2]);
console.log(values[3]);
console.log("방법2. for loop 이용");
for (let i = 0; i < values.length; i++) {
console.log(values[i]);
}
console.log("방법3. for - in 구문을 이용 => 개별 요소의 인덱스를 반환");
for (let index in values) {
console.log(index, values[index]);
}
console.log("방법4. for - of 구문을 이용 => 개별 요소의 값을 반환");
let idx = 0;
for (let value of values) {
console.log(idx++, value);
}
console.log("방법5-1. forEach => 개별 요소를 콜백 함수로 전달");
function printData(data) {
console.log(data);
}
values.forEach(printData);
console.log("방법5-2. forEach -------");
let printData2 = function(data) {
console.log(data);
};
values.forEach(printData2);
console.log("방법5-3. forEach -------");
values.forEach(function(data) {
console.log(data);
});
console.log("방법5-4. forEach -------");
values.forEach((data) => {
console.log(data);
});
console.log("방법5-5. forEach -------");
values.forEach(data => console.log(data));
console.log("인덱스와 값을 함께 출력")
values.forEach((data, index) => {
console.log(index, data);
});
console.log("인덱스와 값을 함께 출력 => 화살표 함수 축약")
values.forEach((data, index) => console.log(index, data));
</script>
2. 객체
- 객체는 배열과 달리 index가 없으므로 key 값으로 접근한다.
<script>
let person = {
"name": "홍길동",
'age': 23,
isMarried: false,
"favorite colors": [ "red", "blue" ],
hello: function() {
console.log(`안녕하세요, 나는 ${this.name}입니다.`);
}
};
console.log(person.name);
console.log(person["name"]);
console.log(person["favorite colors"]);
person.hello();
person.name = "김철수";
person.hello();
person.email = "chulsu@test.com";
person["address"] = "서울시 강남구";
console.log(person);
</script>
- 객체와 배열을 모두 활용하여 데이터에 접근하기
<script>
let person = {
"name": "홍길동",
'age': 23,
isMarried: false,
"favorite colors": [ "red", "blue" ],
hello: function() {
console.log(`안녕하세요, 나는 ${this.name}입니다.`);
}
};
console.log("for-in 구문을 이용 => 객체의 키를 반환")
for (let key in person) {
console.log(key, person[key]);
}
for (let key of Object.keys(person)) {
console.log(key, person[key]);
}
function print(key, value) {
console.log(key, value);
}
Object.keys(person).forEach(key => print(key, person[key]));
Object.keys(person).forEach(function(key) {
console.log(key, person[key]);
});
Object.keys(person).forEach(key => {
console.log(key, person[key]);
});
Object.keys(person).forEach(key => console.log(key, person[key]));
</script>