250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 파이썬 for in
- useEffect
- 타입스크립트
- 파이썬 enumerate
- 파이썬 slice
- 파이썬 반복문
- typeScript
- 리액트 프로젝트
- Next 팀 프로젝트
- 코딩테스트
- 프로그래머스
- 내일배움캠프 프로젝트
- 내일배움캠프 최종 프로젝트
- 리액트
- 한글 공부 사이트
- 파이썬 replace
- tanstack query
- 리액트 훅
- 내일배움캠프
- React Hooks
- 타입스크립트 props
- 자바스크립트
- 파이썬 for
- JavaScript
- 타입스크립트 리액트
- 리액트 공식문서
- REACT
- 내배캠 프로젝트
- 파이썬 딕셔너리
- useState
Archives
- Today
- Total
sohyeon kim
[JS] 함수 선언문 & 화살표 함수 : 호이스팅, 호출 위치 본문
728x90
💡 함수 선언문과 화살표 함수의 호출 위치에 대해 더 알아보자
코딩 테스트를 풀다가 화살표 함수를 선언 전에 호출했는데
실행이 되는 코드가 있어서 대체 왜 되는거지??!?! 하며.. 알아본 호출 위치의 비밀..
function solution(nums) {
let answer = 0;
for (let i = 0; i < nums.length - 2; i++) {
for (let j = i + 1; j < nums.length - 1; j++) {
for (let k = j + 1; k < nums.length; k++) {
if (isPrime(nums[i] + nums[j] + nums[k])) { // 화살표 함수 호출
answer++;
}
}
}
}
console.log(answer); // 1
}
const isPrime = (n) => { // 화살표 함수 선언
for (let i = 2; i <= Math.sqrt(n); i++) {
if (n % i === 0) {
return false;
}
}
return true;
};
solution([1, 2, 3, 4]); // 화살표 함수를 쓸 함수 선언문을 화살표 함수보다 더 아래에서 호출해야 한다!
프로그래머스 소수 찾기 문제였는데
화살표 함수인 isPrime 값을 받아서 answer 을 증가시키는 코드이다.
function test1() {
console.log("hi"); // "hi"
// test3();
if (test3()) {
console.log("hello"); // "hello"
}
}
// test2(); Error
const test2 = () => {
console.log("bye");
};
// test2(); "bye"
const test3 = () => {
return true;
};
test1();
마지막에 함수 선언문을 실행해서 된다는 걸 알기 전에
해 본 테스트 코드들..
test1 에서 test3 를 호출하고 있어서 실행이 안될거라 생각했었지만
test1 이 결국 마지막에 읽히니까 이미 test3 까지 읽었기에 실행이 된다!
728x90
반응형
'JavaScript' 카테고리의 다른 글
[JS] forEach() & map() 차이점 (0) | 2024.07.15 |
---|---|
[JS] input maxlength : 한글, 숫자 입력 시 오류 해결 & e.target 구조분해 (1) | 2024.02.17 |
[JS] 문자열 첫 글자만 대문자로 변경 (0) | 2024.02.09 |
[Web] SPA : 싱글 페이지 App (0) | 2024.01.26 |
[JS] 데이터의 불변성 : 원시 데이터, 참조형 데이터 (0) | 2024.01.23 |