본문 바로가기

분류 전체보기110

자바스크립트 fetch와 axios 자바스크립트에서 ajax를 하는데 있어 axios라는 라이브러리를 많이들 사용합니다. axios는 fetch와 무슨 차이가 있길래 쓰는 걸까요? 1. 예전 브라우저에서는 fetch가 작동하지 않는 경우가 있는데 axios의 경우 예전 브라우저에서는 XMLHttpRequest를 사용해 호환이 가능합니다. 2. fetch를 쓰는 경우 예를 들어 get함수를 쓸때 https://www.google.com/search?first=123&second=456 이런식으로 가독성이 그리 좋지 못한데 axios를 사용하면 baseURL을 사용가능하고 아래처럼 params를 따로 설정해서 가독성에서 장점이 있습니다. 1 2 3 4 params: { first: 123, second: 456, } cs 3. json변환 과.. 2021. 5. 15.
golang fsnotify를 이용한 폴더/파일 감시 fsnotify package를 이용하기전에 go get -u golang.org/x/sys/... 를 먼저 설치해야합니다. 그 후에 go get github.com/fsnotify/fsnotify 를 설치합니다. 1 2 3 4 5 watcher, err := fsnotify.NewWatcher() if err != nil { log.Fatal(err) } defer func() { _ = watcher.Close() }() cs 위처럼 watcher를 생성하고 defer을 이용하여 나중에 닫아줍니다. 그 후 golang의 os package, ioutil.TempDir, filepath.Join 등을 이용하여 감시하려는 폴더 변수를 생성합니다. 이렇게 생성된 폴더변수를 tempDir이라고 하겠습니다. .. 2021. 5. 14.
자바스크립트 this binding 자바스크립트에서는 this.를 callback 등으로 전달할때 this의 class 정보가 무시됩니다. 예를 들어 아래와 같은 코드가 있습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 class Test { constructor(a, b) { this.a = a this.b = b this.test = document.querySelector('.box') this.test.addEventListener('click', this.onClick) } onClick() { const tot = this.a + this.b console.log("a+b: " + tot) } } t = new Test(1,2) Colored by Color Scripter cs clickMe.. 2021. 5. 13.
자바스크립트 ... 이용하기 javascript에서 ...은 spread operator로 배열을 풀어주는 역할을 합니다. 이를 활용하면 배열을 복사하는 용도로도 이용할 수 있습니다. 1 2 3 4 5 6 7 const people = [ {name: 'Kim', age: 10}, {name: 'Lee', age: 20}, {name: 'Park', age: 30}, ] const copied = [...people, {name: 'Alex', age: 40}] cs 위처럼 하면 copied 배열에는 people 배열에 있는 3개의 object + 새로운 object (Alex) 이렇게 4개가 생깁니다. ** 위 예제에서 copied와 people 배열은 같은 object를 가리키고 있기 때문에 Kim, Lee, Park의 obje.. 2021. 5. 12.