[JavaScript] 객체란

2022. 5. 30. 09:12·개발/html, css, js
728x90
반응형

1. 객체(object)

기본 데이터 타입을 제외한 나머지를 모두 객체라고 볼수 있다.

함수, 배열, 정규표현식.... 객체는 key

 

프로퍼티 : 객체의 상태를 나타내는 값

메서드 : 프로퍼티를 참조하고 조작할 수 있는 동작

const perosn = {
    name: 'Lee',
    age: 20
};

let counter = {
    num: 0,                     //프로퍼티
    increase: function(){       //메서드
        this.num ++;
    }
}
//중괄호 내에 프로퍼티를 정의하지 않으면 빈 객체 생성
let empty ={};

//객체안에 객체를 넣을수 있다.
let student = {
    list:{a:10, b:20, c:30}, //객체
    pring: function(){
        console.log("나는 프린트");
    }
}

전역변수는 안쓰는게 좋지만 불가피하게 사용하게 된다면 하나의 객체를 전역변수로 만들고 객체의 속성으로 변수를 관리

 

첫번째 방법

let myObj = [];
myObj.cal = {a:null, b:null};
myObj.test = {c:null, d:null};
myObj.cal.a = 10;
myObj.cal.b = 20;

function sum(){
    return myObj.cal.a + myObj.cal.b;
}

두번째 방법

let korea = {
    a:500,
    b:300,

    seoul:{
        a:100,
        b:20,
        c:50,
    },
};

let circle = {
    radius : 5,
    getDiameter : function(){
        return 2* this.radius;
    }
}

객체의 프로퍼티에 접근하는 방법

 .(온점)을 이용, []이용

console.log(circle.radius);
console.log(circle["radius"]);

let obj = {a:10,b:20,c:30};

for (const key in obj) {
   console.log(key);
}
for (const val in obj) {
    console.log(obj[val])
}
for(i in obj){
    console.log("key : " + i + " value : " + obj[i]);
}

생성자 : 첫글자는 대문자로 쓰는게 관례이다. 반드시 new연산자를 써서 실행한다.

function User(name){
    //this = {};
    this.name = name;
    this.isCheck = false;

    //return this;
}

인스턴스 : 클래스에 의해 메모리에 저장된 실체

객체가 메모리에 저장되어 실제로 존재하는것

function Person(name, age, city){
    this.name = name;
    this.age = age;
    this.city = city;
    this.information = function(){
        console.log("나는 " + this.name + " 나이는 " + this.age + " 사는곳은 " + this.city);
    }
}

let p1 = new Person("사자",19,"에버랜드");
let p2 = new Person("호랑이",20,"내 앞마당");
p1.information();
p2.information();

 

728x90
반응형

'개발 > html, css, js' 카테고리의 다른 글

[JavaScript] 버블정렬, 선택정렬  (0) 2022.05.31
[JavaScript] Class  (0) 2022.05.30
[JavaScript] 고차함수  (0) 2022.05.29
[JavaScript] 월남뽕 게임(카드게임)  (0) 2022.05.27
[JavaScript] 야구게임 만들기  (0) 2022.05.26
'개발/html, css, js' 카테고리의 다른 글
  • [JavaScript] 버블정렬, 선택정렬
  • [JavaScript] Class
  • [JavaScript] 고차함수
  • [JavaScript] 월남뽕 게임(카드게임)
TeTedo.
TeTedo.
  • TeTedo.
    TeTedo 개발 일기
    TeTedo.
  • 전체
    오늘
    어제
    • 분류 전체보기 (319)
      • 개발 (274)
        • Article (4)
        • 정리 (21)
        • Spring Boot (17)
        • JPA (2)
        • JAVA (6)
        • Database (4)
        • 자료구조 (11)
        • 알고리즘 (32)
        • React (20)
        • Docker (10)
        • node.js (18)
        • Devops (11)
        • Linux (4)
        • TypeScript (3)
        • Go (10)
        • HyperLedger (4)
        • BlockChain (43)
        • html, css, js (48)
        • CS (3)
        • AWS (3)
      • 모아두고 나중에 쓰기 (3)
      • 팀프로젝트 (18)
        • SNS(키보드워리어) (9)
        • close_sea (9)
      • 개인프로젝트 (1)
        • Around Flavor (1)
        • CHAM (13)
        • ethFruitShop (5)
      • 독서 (0)
        • 스프링부트와 AWS로 혼자 구현하는 웹 서비스 (0)
  • 블로그 메뉴

    • 홈
    • 개발일기
    • CS
    • 실습
    • 코딩테스트
    • 웹
    • Go
    • node.js
    • 팀플
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    프로그래머스
    go
    ERC721
    html
    mysql
    js
    30일챌린지
    하이퍼레저
    go언어
    30일 챌린지
    블록체인
    node.js
    명령어
    nodejs
    React
    컨테이너
    CSS
    erc20
    node
    도커
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
TeTedo.
[JavaScript] 객체란
상단으로

티스토리툴바