JavaScript
[드림코딩] 콜백함수 (1) : 콜백지옥 예시
콜백지옥 // 기본세팅 class UserStorage { loginUser(id, password, onSuccess, onError) { setTimeout(() => { if ( (id === 'master' && password === 'master00') || (id === 'submaster' && password === 'submaster00') ) { onSuccess(id); } else { onError(new Error('not found')); } }, 2000); } getRoles(user, onSucces, onError) { setTimeout(() => { if (user === 'master') { onSuccess({name: 'Master', role : 'admin'..
여태까지 고쳐온 오류들 : 사파리 영상 백그라운드가 안 뜬다/자동재생된다
여태까지 고쳐온 버그들 시리즈는 똑같은 오류가 발생하지 않도록 하고, 똑같은 오류가 발생했을 시 조속한 대처를 할 수 있도록 기록하는 시리즈다. 숫자 순서대로 시도해본다. 사파리 영상 백그라운드가 안 뜬다/자동재생된다 webm 확장자로 바꿔보기 아래태그로 시도해보기 (playsinline을 먹여야 사파리에서 영상이 팝업되며 자동재생되는 것을 막을 수 있다)
[mdn, 드림코딩, 코딩애플] 콜백함수 (1) : 동기와 비동기 개념
콜백함수 자바스크립트는 동기적(synchronous) 언어이다. 이 말은 코드를 작성한 순서에 맞춰 동기적으로 실행된다는 말이다. 아래는 비동기적으로 실행되는 함수이다. console.log('1'); setTimeout(() => console.log('2'), 1000); console.log('3'); //1 //3 //2 Synchronous callback function printImmediately(print) { print(); } printImmediately(() => console.log('hello')); Asynchronous callback function printWithdelay(print, timeout) { setTimeout(print, timeout); } printW..
[드림코딩] 유용한 배열(array) api (3) : reduce, reduceRight, sort, api 다중으로 쓰기
class Coder { constructor(name, age, enrolled, score) { this.name = name; this.age = age; this.enrolled = enrolled; this.score = score; } } const coders = [ new Coder('A', 29, true, 45), new Coder('B', 28, false, 80), new Coder('C', 30, true, 90), new Coder('D', 40, false, 66), new Coder('E', 18, true, 88), ] reduce 배열의 각 데이터에 주어진 리듀서(reducer)함수를 실행하고, 하나의 결과값을 반환한다. 리듀서 콜백함수는 네 개의 인자를 가진다. 누산기(..
[드림코딩] 유용한 배열(array) api (2) : filter, map, some, every
class Coder { constructor(name, age, enrolled, score) { this.name = name; this.age = age; this.enrolled = enrolled; this.score = score; } } const coders = [ new Coder('A', 29, true, 45), new Coder('B', 28, false, 80), new Coder('C', 30, true, 90), new Coder('D', 40, false, 66), new Coder('E', 18, true, 88), ] filter enrolled가 true인 코더만 골라 새로운 배열을 만들어보자. const result = coders.filter((coder) => co..
[드림코딩] 유용한 배열(array) api (1) : join, split, reverse, slice, find
join 배열의 모든 데이터를 string으로 합쳐 변환한다. const goodcoders = ['noran', 'paran', 'black', 'white']; const result = goodcoders.join(); console.log(result); //noran,paran,black,white 참고 아래처럼 구분자를 전달하면 전달된 구분자로 구분되어 나타난다. const result = goodcoders.join(|); console.log(result); //noran|paran|black|white split string 데이터를 배열로 만든다. const coders = 'noran,paran,black,white'; const result = coders.split(','); co..