[ TIL ] 2022-05-22

Gorae·2022년 5월 22일
0
post-thumbnail

Javascript

Victory.js

공식 사이트
참고 블로그

  • 차트 생성을 도와주는 라이브러리
  • svg 여백 처리가 깔끔해서 디자인 요구사항 대응에 탁월하다
  • D3js 보다 쓰기 쉽다, 문서화가 아주 잘 돼있다

bignumber.js

https://github.com/MikeMcl/bignumber.js


bug

mac 에서 Chrome 에서 keyDown 이벤트 발생 시 입력이 두 번 되는 버그가 있었다. 기기 문제라 치부하기엔 문제가 너무 명확했다.

  1. Chrome 에서는 문제가 발생하나, Safari 에서는 문제 없이 동작함
  2. 한글 입력 시 문제가 발생하나, 영문 입력 시에는 문제 없이 동작함

이는 다음과 같은 방법으로 해결할 수 있다.

if (e.nativeEvent.isComposing) return

한글 입력 시 'ㄱ'을 입력했을 때 아직 글자가 완성되지 않았다고 판단하고, 글자가 완성될 때까지 조합을 하는데 이것을 Composing 이라고 한다. keyDown 이벤트 사용 시 isComposing 이 false 에서 true 로 바뀌는 등에서 이벤트가 중복 발생하게 돼서, 위와 같은 문제가 발생한 것이었다.

참고 블로그


CSS

  • 텍스트 강조, 하이라이팅은 mark 태그를 이용!!!
  • div 로 mark 태그 감싸기는 상관 없으나, 인라인 태그로 감싸는 건 ❌
    (a 태그로 li 감싸기 ❌, span 으로 mark 감싸기 ❌)

Tips

  • 데이터 정제
    받아온 데이터가 서로 다른 형식으로 올 때, 정제를 먼저 해주면 조건문 사용이 줄어든다
    예를 들어, 배열로 와야 할 데이터가 원소 1개일 땐 객체로 온다면, 받는 즉시 배열로 감싸주면 되는 것.

팀 과제에서 더 해볼 수 있는 것

  • JSON 데이터 받아서 퍼지 문자열 검색
  • 유사도 기준 정렬

더 알아볼 것

  • CSS all 속성
profile
좋은 개발자, 좋은 사람

0개의 댓글