[TIL] 2020/08/19

yongkini ·2020년 8월 19일
0

Today I Learned

목록 보기
11/173
post-thumbnail

Today, I Learned

  • PRE-underbar advanced 문제 마무리 (except for 3 problems)
    • eval을 통해서 문자열을 코드처럼 쓸 수 있다. 예를 들어, eval('2+2'); 를 하면 결과는 4가 리턴된다.
      내가 이것을 응용한 코드 :
      result.push(eval('el.'+functionOrKey+'()'));
      메서드를 문자열로 받아서, 그 메서드를 실행시켰다.
    • bind(), apply(), call()을 수업시간에 복습했다. bind()를 이용해서, curry함수를 만들 수 있다는 것을 배웠고, DOM과 함께 Array-like 객체인 querySelectorAll()로 가져온 자료 등을 바탕으로 mapping해서 원하는 자료만 추출할 수 도 있고, 다양한 응용이 가능하다는 것을 배웠다(매우 신기했다..ㅎㅎ)
    • 전개문법 : ...args : args가 배열일 때, args를 참조하면, 1 2 3 이런식으로 배열 안의 요소들이 리턴됨
      rest parameter : ...args : 전개문법과 똑같지만, args가 배열이 아닌 요소1, 요소2, 요소3 이런식일 때, args를 참조하면 배열이 리턴됨.
    • Math.random() : 이미 알고 있었지만, 헷갈렸다.. 확실히 개념 잡고가자. Math.random() 자체는 0이상, 1미만의 랜덤 실수를 리턴한다. 그러면, 0이상 10미만의 정수를 받으려면? Math.random() * 10 =>0이상, 10미만의 랜덤 실수를 리턴 => 여기에 Math.floor(Math.random() * 10) 해주면, 0이상 10미만의 정수를 리턴한다는 것을 예시로 기억!

Planning to Study

  • advanced 문제 남은거 마무리

Comment

: 안될거라는 회의적인 생각을 너무 많이하는 것 같다. 평소에도 뭔가를 하자하거나, 하려했을 때, 좋게 말하면 신중하다고 할 수 있지만, '이게 될까?'라는 회의적인 생각을 많이하는데, 좋다고는 생각되지 않는다. 물론, 이유없는 긍정도 별로지만, 의심부터하지는 말자 :D
profile
완벽함 보다는 최선의 결과를 위해 끊임없이 노력하는 개발자

0개의 댓글