객체

shin·2021년 5월 17일
0

javascript

목록 보기
4/23

객체

  • 서로 연관된 변수와 함수를 그룹핑하고 이름을 붙인 것

literal 표기법

  • javascript는 항상 변수를 만들고, 그 변수에 자료형 변수나 객체를 담아 사용하는 객체지향언어 이다.

Javascript에서 변수를 생성하는 방법을 보면 아래와 같다.

  • 숫자(number)
    ex) var no = new Number();
  • 문자열(string)
    ex) var str = new String();
  • 참거짓(boolean)
    ex) var isTrue = new Boolean();
  • 객체(object)
    ex) var obj = new Object();
  • 함수(function)
    ex) var func = new function(){};
  • 배열(array)
    ex) var arr = new Array();
  • 정규식(regexp)
    ex) var reg = new RegExp();

객체를 생성할 때 변수를 선언하고 new라는 연산자를 생성하고, 그 다음에 객체에 대한 정보를 담은 내용을 작성한다.

그런데 객체지향언어인 Javascript에서는 리터럴(literal)표기법이라는 것을 지원하는데, literal의 사전적의미를 보면 (문자그대로)를 뜻한다.

위에있는 객체생성자 문법을 리터럴(literal)표기법으로 바꾸면 아래와 같다.

  • var no=3;
  • var str='';
  • var isTrue=true;
  • var obj={nation:'korea', age:15};
  • var func=function( ){ };
  • var arr=[ ];
  • var reg=/[a-z]/g;

따라서 리터럴(literal)표기법 이란 변수를 선언함과 동시에 그 값을 지정해주는 표기법이다.

프로퍼티

let user = { 
	name : tom
	age : 20
};
  • : 을 기준으로 왼쪽에는 식별자 , 오른쪽에는 값이 위치한다.
  • 객체 user에는 두가지 프로퍼티가 존재한다
    첫번째는 name이라는 식별자(키)에 tom이라는 값을 가진 프로퍼티
    두번째는 age라는 식별자(키)에 20이라는 값을 가진 프로퍼티

객체 기본

var memberObject = {
    manager : 'tom',
    developer : 'mike',
    designer : 'steve'
};
  • 객체에 저장된 원소의 값을 불러올려면 객체에 . 을 작성하면 된다
console.log("memberObject.designer", memberObject.designer);
//memberObject.designer steve
  • 배열의 값을 불러오는 것처럼 객체에서도 [ ]를 써서 값을 불러올수 있다
console.log("memberObject.['designer']", memberObject['designer']);
//memberObject.['designer'] steve
  • 객체의 값을 수정 하려면 아래와 같이 하면된다.
memberObject.designer = 'jerry'
console.log(memberObject);
//{ manager: 'tom', developer: 'mike', designer: 'jerry' }
  • 만약 삭제를 원한다면 delete라는 연산자를 사용하면 된다.
delete memberObject.manager
console.log(memberObject);
{ developer: 'mike', designer: 'jerry' }

객체와 반복문

for ~~ in ~~

var memberObject = {
    manager : 'tom',
    developer : 'mike',
    designer : 'steve'
};
for(var name in memberObject){
    console.log(name);
}
/// manager
/// developer
/// designer
  • in 키워드 앞쪽에는 객체가 반복적으로 실행될 때 그 순번에 해당되는 원소의 이름이 주입될 변수가 오고, 뒤쪽에는 객체가 온다.
  • 순번에 해당하는 원소의 값을 가져오고 싶을 때 memberObject.name을 작성하면 되는데, . 뒤에는 변수가 올 수 없어서 [ ]를 사용해서 memberObject[name]으로 작성하면 된다.
for(var name in memberObject){
    console.log(name, memberObject[name]);
}
//manager tom
//developer mike
//designer steve

0개의 댓글