get & set ํ•จ์ˆ˜

๐Ÿ“„ get & set ํ•จ์ˆ˜

ํด๋ž˜์Šค ๋‚ด๋ถ€์—์„œ get๊ณผ set ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • get: ๊ฐ’์„ ์กฐํšŒํ•œ๋‹ค.
  • set: ๊ฐ’์„ ์ €์žฅํ•œ๋‹ค.

๐Ÿ“„ Getterํ•จ์ˆ˜

Getterํ•จ์ˆ˜๋Š” ํŠน์ • ๊ฐ’์„ ์‹คํ–‰์ด ์•„๋‹Œ ์กฐํšŒํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์กฐํšŒํ•˜๋ ค๋Š” ๊ฐ’์„ returnํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

const numbers = {
  a: 1,
  b: 2,
  get sum() {
    console.log("sumํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.");
    return this.a + this.b;
  },
};

const numbers๋ผ๋Š” ๊ฐ์ฒด์˜ a์™€ b๋ฅผ ํ•ฉํ•œ ๊ฐ’์„ ์กฐํšŒํ•˜๋Š” Getterํ•จ์ˆ˜ sum.

๐Ÿ“„ Setterํ•จ์ˆ˜

Setterํ•จ์ˆ˜๋Š” ๊ฐ์ฒด๋‚˜ ํ•จ์ˆ˜ ๋ฐ–์—์„œ ๊ฐ’์„ ์„ค์ •ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— Getterํ•จ์ˆ˜์™€๋Š” ๋‹ค๋ฅด๊ฒŒ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’ ์„ค์ •์€ ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค.

const dog = {
  _a: 1,

  set name(value) {
    this._a = value;
  },
};

์ถœ์ฒ˜

  • ํŒจ์ŠคํŠธ์บ ํผ์Šค ๊ฐ•์˜

Leave a comment