객체의 사용
// Object 객체인 product의 생성
var product = new Object();
// product.키 = 속성;
product.pName = "Dry Mango";
product.type = "Pickle";
product.ingredient = ["mango", "sugar"];
객체의 선언 및 속성 추가하기
객체는 키 값을 사용하여 속성을 저장 및 식별한다.
속성에는 모든 자료형이 올 수 있다.
공백이 포함된 Key
// objTest라는 이름의 객체 생성
var objTest = new Object();
// I love you 라는 키에 javascript 속성 추가
objTest["I love you"] = "javascript";
Key로 I love you를 가지는 객체
객체의 Key에 모든 문자열을 사용할 수 있다.
변수명으로 인식되지 않는 단어(공백, 특수문자 등)를 키로 사용한 경우에는 반드시 대괄호를 사용해야 키로 인식된다.
객체의 메소드
// dog 객체를 생성
var dog = new Object();
// "흰둥이"라는 이름 추가
dog.name = "흰둥이";
// eat 메소드 추가
dog.eat = function (food) {
console.log(this.name + "가 " + food + 를 먹습니다.");
}
// 흰둥이가 개껌을 먹습니다
dog.eat("개껌");
객체에 익명함수 추가
객체의 반복문
// product 객체 및 정보 입력
var product = new Object();
product.pName = "Mango";
product.type = "Pickle";
product.ingredient = "sugar";
// for in 문을 이용한 모든 키-속성 출력
for (const word in product) {
console.log(word + ": " + product[word]);
}
for in 문을 이용한 객체정보 출력
객체의 value 출력에는 for in 문(foreach문)을 사용해야 하며, 단순 for 문을 사용할 수 없다.
특정 Key의 포함여부 확인
// student 객체의 생성
var student = new Object();
// student 객체에 특정 이름의 속성이 있는지 확인
console.log("name" in student); // true 반환
console.log("age" in student); // false 반환
in 을 활용하여 속성 포함여부 확인
with - 여러개의 속성 접근시 코드 길이 줄이기
var student = new Object();
var name = "홍길동";
var kor = 90;
var eng = 80;
var math = 70;
with (student) {
console.log("학생이름: " + name + "<br>");
console.log("국어점수: " + kor + "<br>");
console.log("영어점수: " + eng + "<br>");
console.log("수학점수: " + math + "<br>");
}
with 의 사용 예시
with 를 이용하면 특정 객체에서 여러 속성을 가져와야 할 때 객체명을 한 번만 입력해도 된다.
객체의 키, 값 추가와 제거
// person 객체 생성 및 속성 추가
var person = new Object();
person.name = "홍길동";
person.hobby = "낚시";
person.strength = "자바";
person.dream = "웹개발자";
// person 객체에 toString 메소드 추가
person.toString = function() {
var str = "";
for (const key in person) {
if (key != "toString")
str += key + ": " + person[key] + "<br>";
}
return str;
}
// name, hobby, strength, dream 값 출력
console.log(person.toString());
// hobby 속성 제거
delete(person.hobby);
// name, strength, dream 값 출력
console.log(person.toString());
속성을 추가한 후 delete()를 이용해 제거
객체를 생성한 이후에도 키, 값을 추가하거나 제거할 수 있다.
'javascript' 카테고리의 다른 글
이벤트 (0) | 2021.02.25 |
---|---|
n초 후 실행하기, n초마다 실행하기 (0) | 2021.02.22 |
이벤트의 정보 가져오기 (0) | 2021.02.19 |
버튼에 이벤트 추가 (0) | 2021.02.19 |
정렬 함수 sort() (0) | 2021.02.16 |
댓글