기초공사 (html,css,javascript)
03_반복문_for / foreach 본문
1. for문
for문은조건에 들어가는 값이 일정하게 커지면서 명령을 반복 실행할때 편하다.
for(초기값; 조건; 증가식;) { ......}
**for반복문 예제
// const color = ["red","orange","purple","skyblue"];
// console.log(color)
// // for(초기값; 조건; 증감식){
// // }
// for(let i = 0; i < color.length; i++){
// document.write(`${color[i]}~~`)
// }
i가 배열안에 있는 목록이다! (<----이걸 헷갈려서 한참을 멍~)
// for예제 (break를 유심히보길) --
/Do it 실습!
/*
사용자가 입력한 숫자가 소수인지의 여부를 확인하는 프로그램을 작성해보라!
생각 노트 - 1. 소수를 따질때 제외해야 하는 숫자가 있을까? /
2.어떤반복문을 사용해서 어디부터 어디까지 반복해야 하나요?
소수란 : 1과 자기자신만 있는 1보다 큰 양의 정수이다.(2,3,5,7,11,....)
다른수로 나누어 떨어진다면 소수가 아니다.
1은 소수도 합성수도 아니다. 따라서 number값이 3이상인 자연수만 소수인지 체크하면 된다.
*/
/*
const number = parseInt(prompt("숫자를 입력하세요"));
let isPrime; //소수인지의 여부를 지정한다. true 또는 false
if(number === 1 ){
document.write(`${number}는 소수도 합성수도 아닙니다.`)-------1번
} else if (number === 2) {
document.write(`${number}는 소수입니다.`) -------------------1번
} else {
for(let i = 2; i < number; i++){
//이자리는 화면에 출력할 자리. 그러므로 if절이 한번 더와야한다.
if(number % i === 0 ){ //나누어 떨어지니 소수가 아니다.false --->number % i === 0
isPrime = false;
// document.write(`${number}는 소수가 아닙니다.`)
number에 15을 입력햇을면 i가3부터 23번까지 계속 반복할것이다.
break; //얘가 있으면 한번만 실행하고 빠져나간다.
}
else {
isPrime = true;
// document.write(`${number}는 소수입니다.`)
}
}
// ****출력*******isPrime값에 따라 true이면 소수, false면 소수가아니라고 표현해야 한다.
if (isPrime){
document.write(`${number} 소수입니다.`);
}else {
document.write(`${number} 소수가 아닙니다..`);
}
}
number % i === 0를이해하는가? 뒤에 나올 마무리문제2에서 난 헷갈렸다.
마무리문제2에서는 i % 2로 했다. 디버깅을 해보니 알게되었지만, i가 무슨 의미인지 한번 더 되짚어봐야한다.
왜 i로 나눌까. i는 순번이다. 횟수, 몇번째, 입력한숫자까지의 배열순번 이다.
1-1. break; 가 없을때
break가 있을때;
2. forEach문
forEach문에서 fruits 배열에 있는 각 요소를 fruit 라고 정해놓고, fruit 값을 화면에 표시하는예제입니다.
배열명.forEach(콜백함수)
//for each 예제
/*
좋아하는 과일 이름이 들어 있는 'fruits'라는 배열을 만들고 fruit의 값을 표시해보세요
생각노트 - 1. 변수에배열명 만든다. 2.foreach문을쓴다.
foreach문
배열명.foreach(function(콜백함수){
});
*/
// const fruits = ["apple", "orange", "peach", "melon", "banana"];
//
fruits.forEach(function(fruit){
// document.write(`${fruit}/`)
// });
// --> fruit에 apple, orange, peach, melon, banana가 하나씩 들어오는걸 디버깅해보면 나온다.
'javascript > js_study' 카테고리의 다른 글
04_콜백함수 (0) | 2023.05.21 |
---|---|
03_마무리문제 (0) | 2023.05.19 |
03_switch문 (0) | 2023.05.19 |
03_연산자. (0) | 2023.05.19 |
prompt (0) | 2023.05.17 |