wldnswldnswl / IknowJS

You Don't Know JS 스터디
1 stars 1 forks source link

[쏙쏙] 8장 #151

Closed maywngml closed 1 year ago

maywngml commented 1 year ago

요점정리

https://daily-crocodile-406.notion.site/8-I-95a170e5abe243c5a4cbc06e139557d6?pvs=4

질문

  1. (p.171) 패턴1: 직접 구현 "직접 구현된 함수를 읽을 때, 함수 시그니처가 나타내고 있는 문제를 함수 본문에서 적절한 구체화 수준에서 해결해야 한다."는 말이 무슨 말인지 이해가 되지 않는다. 함수의 문제를..같은 구체화(계층화) 수준에서 해결한다..?
  2. (p.193) indexOfItem은 하나의 인덱스만 반환할텐데 장바구니에 같은 이름의 제품이 여러개 있다면 어떻게 되는걸까? indexOfItem을 한번만 사용하는게 맞는걸까?

      function setPriceByName(cart, name, price) {
          var cartCopy = cart.slice();
          var i = indexOfItem(cart, name);
          if(i !== null)
              cartCopy[i] = setPrice(cartCopy[i], price);
          return cartCopy;
      }
    
      function indexOfItem(cart, name) {
          for(var i = 0; i < cart.length; i++) {
              if(cart[i].name === name)
                  return i;
          }
          return null;
      }
maywngml commented 1 year ago
  1. 직접 구현 패턴을 사용해 같은 계층의 함수만 호출하도록 해 함수 문제를 해결한다. 는 뜻
  2. 시그니처 = 함수명 안에 들어있는 파라미터들