배열에서 arr[ i ], arr[ i+1 ]를 비교할 때 i가 마지막 array index 값이면 arr[ i+1 ]인 undefined와 비교해도 javascript에는 상관없음. 띠요옹..👀
c와 같이 out of boundary 에러는 뜨지 않는다. 그래도 온전한 코드를 위해서 나는 예외처리를 해줘야지.(여담으로 javascript가 개판이라는 이야기가..?)
프로그래머스 문제에서 '문자열 다루기' 문제를 풀던 중 정규 표현식
이란걸 알게되었다.
/^\d{4}$|^\d{6}$/
여기에서 ^\d{4}$
는 숫자로 시작, 길이가 4, 숫자로 끝
이라는 의미이고 마찬가지로 ^\d{6}$
는 숫자로 시작, 길이가 6, 숫자로 끝
이라는 의미로써 정규식 표현인 // 안에 위 두개를 or( | )한 표현식이다.[TIL]22.07.09에서 궁금해했던 동기식 방법으로 받아오는 법을 오늘 배웠다! async와 await를 이용하여 동기식으로 response를 받아올 수 있다.
const getCoffee = async () => {
/* 비동기 방식 */
axios.get("http://localhost:3000/starbucks").then((res) => {
for(let i=0; i<res.data.length; i++) {
createMenuCard(res.data[i])
}
})
/* 동기 방식 */
const result = await axios.get("http://localhost:3000/starbucks")
console.log(result)
for(let i=0; i<result.data.length; i++) {
createMenuCard(result.data[i])
}
}
axios()를 이용하여 front-end에서 req에 data를 넣고 back-end로 보냈을 때 Undefined
가 나왔다. 내가 axios()를 잘못 사용한 줄 알고 계속 확인하고 삽질을 했다... 알고보니 post()에서 req.body를 받았을 때 body-parser를 사용하기 전에는 디폴트 값으로 Undefined이 설정되기 때문이었다.🫢 그런데 express.js가 빌트인 body parser를 넣었다는 점을 알게 되었고..! 이건 그 전에 작업할 때 사용한 적이 있었다!!!! 결국 app.use(express.json())
으로 json request body를 파싱할 수 있었다.. 으윽 앞으로 json파싱은 절대 안 잊어버릴 것 같다..
역시 삽질해서 힘들지만 그만큼 머릿속에 오래 각인되는 건 삽질 밖에 없는 듯🤪