본문 바로가기

전체 글157

[CSS] CSS 벤더 프리픽스 자동 추가 - auto prefixer postCSS를 사용한다면 필요 없는 기능이지만, 바닐라 CSS를 사용 중일 경우에는 CSS 호환성을 위해 벤더 프리픽스를 추가해주어야 한다. (하지만 주요 웹 브라우저의 최신 CSS 표준 지원이 빨라지고 있으며 웹 브라우저 시장에서 구글 크롬의 사용률이 크기 때문에 벤더 프리픽스의 필요성도 줄어들고 있다.) 브라우저별 벤더 프리픽스 브라우저 벤더 프리픽스 파이어폭스 -moz- 사파리 -webkit- 크롬 -webkit- 오페라 -o- 인터넷 익스플로러 -ms 이에 관련된 플러그인도 있지만(projects.verou.me/prefixfree/) Prefix free: Break free from CSS vendor prefix hell! -prefix-free lets you use only unpref.. 2021. 2. 27.
[자바스크립트/알고리즘] 휴대폰 번호 검증 (정규식) 문제 미국 휴대폰 번호가 유효하다면 true, 유효하지 않다면 false를 리턴하라 사용자는 유효한 미국 번호의 형식이 있는 한 원하는 방식으로 양식 필드를 작성할 수 있다. 국가 코드가 제공된 경우 국가 코드가 1인지 확인해야 한다. 다음은 미국 번호에 대한 유효한 형식의 예시이다. 555-555-5555 (555)555-5555 (555) 555-5555 555 555 5555 5555555555 1 555 555 5555 나의 풀이 function telephoneCheck(str) { let regex = /^(1\s?)?(\(\d{3}\)|\d{3})[\s\-]?\d{3}[\s\-]?\d{4}$/ return regex.test(str); } 정규식을 사용하여 풀었다. 사실 정규식말고 해결방법이.. 2021. 2. 4.
[자바스크립트/알고리즘] 회문(Palindrome) 검사 문제 주어진 문자열이 회문이면 true를 반환, 아니면 false를 반환하다. 영숫자가 아닌 문자들(non-alphanumeric characters)은 제거되어야 한다. 대소문자 구분도 없어야 한다. 나의 풀이 function palindrome(str) { let alphanumeric = /[a-z]|[0-9]/gi; str = str.match(alphanumeric); for(let i = 0; i < str.length; i++){ //소문자 변경 if(str[i].toUpperCase()) str[i] = str[i].toLowerCase(); } let cnt = 0; if(str.length % 2 === 1){ //str의 길이가 홀수일 때 for(let i = 0; i < str.le.. 2021. 2. 4.
[자바스크립트/알고리즘] 2진수 문자열을 영어로 변환 문제 주어진 2진수 문자열을 영어로 변환하여라. 예시 binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111") Aren't bonfires fun!? binaryAgent("01001001 00100000 01101100 01101111 01110110 01100101 00100000 01000110 01110010 01100101 01100101 01000011 01101111 01100100 011.. 2021. 2. 3.
[자바스크립트/알고리즘] flat 함수 대안 flat() 함수란? [자바스크립트] flat() 함수-중첩된 배열 구조 하나로 합치기 정의 flat() 메서드는 모든 하위 배열 요소를 지정한 깊이까지 재귀적으로 이어붙인 새로운 배열을 생성합니다. 구문 const newArr = arr.flat([depth]) 예시 const arr1 = [1, 2, [3, 4]]; arr1.flat(); // [1, 2.. breathtaking-life.tistory.com 지난번 flat() 함수를 이용하면 중첩된 배열 구조를 하나로 바꿀 수 있다고 하였다. 이번 문제는 flat함수를 사용하지 않고 대안을 만들어야 한다. 문제 중첩된 배열을 평평하게(flatten) 만들어라. steamrollArray([[["a"]], [["b"]]]) ["a", "b"] st.. 2021. 2. 3.
[자바스크립트/알고리즘] 프리코드캠프(FCC) - Drop it : 함수가 true일 때 까지 요소 제거 (shift) 문제 배열이 주어지면 첫 번째 요소(0 인덱스)에서 시작하여 함수가 true로 돌아올 때까지 각 요소를 반복하고 제거합니다. 그런 다음 조건이 충족되면 나머지 배열을 반환합니다. 그렇지 않으면 arr을 빈 배열로 반환해야 합니다. 예시 dropElements([1, 2, 3, 4], function(n) {return n >= 3;}) [3, 4] dropElements([0, 1, 0, 1], function(n) {return n === 1;}) [1, 0, 1] dropElements([1, 2, 3], function(n) {return n > 0;}) [1, 2, 3] dropElements([1, 2, 3, 4], function(n) {return n > 5;}) [] 여기서 주의해야 할 점.. 2021. 2. 2.