2021.09.07

이짜젠·2021년 9월 7일
0

어김없이 QA가 정신없이 진행중이다.
너무 로직적인부분만 신경을써서그런지 자잘자잘하게 놓친부분들이 너무 많았다.
QA 담당자분꼐 죄송한마음이크다.

오늘 겪었던 이슈들을 정리한다.

replaceAll

replaceAll은 브라우저 하위버전에선 지원을 하지않는다.
정규표현식을 사용하여 replace를 replaceAll처럼 사용하자.

const testStr = 'abacadaeafag'

testStr.replaceAll('a', '-') // "-b-c-d-e-f-g"
testStr.replace(/a/gi, '-') // "-b-c-d-e-f-g"

throttle 꼭 해주자!

스크롤이벤트에서 throttle 처리는 까먹지말고 꼭 해주자.
스크롤 페이징처리를 작업해놓았는데, Safari에서 동일한데이터가 여러번 노출되는 문제가 있었다.
Chrome은 문제가 없었지만, Safari에선 스크롤이 바운싱효과가있어 API가 여러번 호출된다.

toLocaleString

매번 천단위 콤마를 누군가 개발해놓은 util을 사용하곤했었는데, javascript에 built-in으로 제공해주는 메소드가 있었다.

toLocaleString은 사용자의 문화권에 맞는 표기법으로 변환된 문자열을 return 해준다..
Object, Array, Nubmer 등 대부분의 built-in 클래스에 메소드로 존재한다.
각 클래스마다 동작이 조금씩 다르다.

Number.prototype.toLocaleString 의 경우, 단위구분과 같은 포맷처리를 해준다.

Number(10000).toLocaleString('en'); // "10,000"
profile
오늘 먹은 음식도 기억이 안납니다. 그래서 모든걸 기록합니다.

0개의 댓글