비동기 처리? 자바스크립트의 비동기 처리란 특정 코드의 연산이 끝날 때까지 코드의 실행을 멈추지 않고 다음 코드를 먼저 실행하는 자바스크립트의 특성을 의미합니다. 콜백함수? 다른코드의 인자로 넘겨주는 함수. 콜백 함수는 다른 코드에게 인자로 넘겨줌으로써 그 제어권도 함께 위임한 함수 2. 제어권 2-1. 호출 시점 var count =0; var timer = setInterval(function(){ console.log(count); // clearInterval은 즉시 종료하란 의미 if(++count>4) clearInterval(timer); },300) // setInterval 구조 // func에는 실행 로직 , delay는 시간의 값 var intervalId = scope.setInte..
메모 자바스크립트의 V8엔진은 싱글스레드임 자바스크립트는 단일 스레드 기반의 언어이지만 자바스크립트는 작업을 동시에 처리할 수 있음. 웹브라우저는 애니메이션 효과를 보여주면서 마우스 입력을 받아서 처리하거나, Node.js기반의 웹서버에서는 동시에 여러 개의 HTTP 요청을 처리하기도 한다. > 자바스크립트는 동시성을 지원하는 셈 > 이때 등장하는 개념이 이벤트 루프임 > 실제로 V8과 같은 자바스크립트 엔진은 단일 호출 스택(Call Stack)을 사용하며, 요청이 들어올 때마다 해당 요청을 순차적으로 호출 스택에 담아 처리할 뿐이다. 자바스크립트 엔진을 구동하는 환경, 즉 브라우저나 Node.js가 담당한다. !!!!!!!!!결론!! 자바스크립트는 싱글스레드인데 런타임이 싱글스레드가 아니라고 함 > ..
0625 콜백함수 비동기처리 콜백함수의필요성 loadScript('/my/script.js'); // script.js엔 "function newFunction() {…}"이 있습니다. newFunction(); // 함수가 존재하지 않는다는 에러가 발생합니다! 예를 들어 시간이 엄청 걸리는 처리를 자바스크립트한테 시켰는데 특정 코드를 실행시키고 그 다음걸 실행시켜야하는것임. 원래 자바스크립트한테 이걸 콜백처리를 안한채 그대로 시키면 시간이 긴 처리를 뒤로 보내버려서 그 다음코드를 실행시킨다면 에러가 나는데 이를 제어하는 것이 콜백함수인거임 loadScript > newFunction(loadScript안에있는) //이런게 콜백. 이런식으로 콜백선언을 하면 해결할수있음 loadScript('/my/scr..
개발하면서 회원가입/로그인 기능을 구현할때 토큰을 어디다가 저장해야할지 사용자가 짧게 가지고있어야할 정보를 어디에 넣어야할지 고민이 많았는데 웹저장소 개념이 헷갈려서 아무데나 저장한 경우가 더러 있었다. 그래서 이 영상을 참조해 개념을 백업백업 https://www.youtube.com/watch?v=NnvsMCR9DL0 웹저장소 네가지 1. 로컬스토리지 만료기간없이 계속 저장 키벨류 저장소이고 str타입만 지원함 최대저장용량이 많지않음(5mb~10mb) 2. 세션스토리지 브라우저끄면 날아감 자동임시저장용도쯤으로 자주 쓴다고함 3. 인덱스DB 로컬스토리지와 다르게 대용량데이터 저장가능 상대적으로 저수준 API 제공? 본격적으로 저장하겠다면 고려해볼만? 4. 쿠키 저장용량 4kb로 진짜작음 서버데이터 공유..
오늘 해결한 문제인데 rest api를 사용해 개발을 하던중 이런식으로 url을 짜니까 /popularlist 의 결과값이 // 상품상세보기 productRouter.get("/:id", async (req, res) => { try { const product = await Product.findOneAndUpdate({ _id: req.params["id"] }, { $inc: { views: 1 } }, { __v: 0 }); res.json({ okay: true, result: product }); } catch (error) { res.send({ okay: false }); } };); // 실시간 인기상품 리스트 productRouter.get("/popularlist",async (req..
이번 프로젝트에서 카카오 지도 API를 사용했다. 지도데이터하면 경도와 위도를 필수적으로 다룰 수 밖에 없는데 이때 주의할 점이 하나 있다. 기본적으로 우리는 마커(location포함 데이터)에 좌표를 넣어 DB에 저장해두고 그걸 불러오는 로직을 고안했는데 location = [x,y] 식으로 [위도,경도]값을 array에 넣어 DB에 넣어주려했다. 그러나 이 데이터들을 단순 num값으로 DB에 넣으면 (첫번째는 테스트항목이니 무시) 두번째와 세번째는 같은데이터인데 두번째는 number형식이기에 특정 소숫점자리가 반올림된것을 볼 수 있다. 그리고 str형식으로 넣어준 세번째값은 그대로 데이터가 보존되어있다. 이게 왜 중요하냐면 지도좌표에서 0.0001의 위치는 아주 큰차이이기 때문이다. (극단적인 예시로..
- Total
- Today
- Yesterday
- redis
- 스마트렌즈
- 주피터랩
- 이미지검색
- mockserver
- visionAPI
- 조회수기능
- 빈해쉬맵
- 시간어떻게
- 모의서버
- 네이버이미지검색
- 목서버
- 항해해커톤
- 해커톤
- 지도데이터
- jupyterlab
- 구글클라우드스토리지
- PC시간어떻게
- 소숫점잘림
- crudrepository
- 구글
- 데이터잘림
- 알고있
- ChatGPT
- 항해커톤
- 실시간클록
- 실시간클락
- 조회수기능개발
- redis-py
- redisTemplate
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |