국비수업/CODE
code 실습 / 2️⃣7️⃣
밀김
2023. 4. 9. 15:43
728x90
//토요 스터디
// 조건문
// ✏️ 1부터 30까지의 숫자 중 반복문과 조건문을 사용하여 4의 배수만 출력되도록 코드를 작성하세요
// for(let i=0; i<30; i++){
// if(i%4==0){
// console.log(i+1);
// }
// }
// ✏️ 1부터 30까지의 숫자 중 2의 배수이면서 3의 배수인 값만 출력해보세요
// for(let i=0; i<30; i++){
// if(i%2==0 && i%3==0){
// console.log(i);
// }
// }
// 반복문
// ✏️ for문을 이용해서, 콘솔에 문자열 “Hello newlecture!”를 3번 출력해보세요
// for(let i=0; i<3; i++){
// console.log("Hello newlecture!");
// }
// -------------------------------------------------------------------------
//클래스룸 (못푼문제:★★★★★)
// let nums = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// let sum = [];
// for, for of문을 이용하여 홀수만 골라 새로운 배열을 만들어 리턴하는 함수를 작성하세요
// for(let i = 0; i<nums.length; i++){
// if(i%3==0){
// sum.push(i);
// }
// }
// console.log(sum);
// Array.prototype.filter를 이용하여 홀수만 골라 새로운 배열을 만들어 리턴하는 함수를 작성하세요
// for(let i = 0; i<nums.length; i++){
// if(i%3==0){
// sum = nums.filter(i => (i%3)==0);
// }
// }
// console.log(sum);
// for, for of문을 이용하여 nums 배열의 모든 값을 두 배로 만든 새로운 배열을 리턴하는 함수를 작성하세요
// for(let i of nums){
// sum = i*2;
// console.log(sum);
// }
// Array.prototype.map을 이용하여 nums 배열의 모든 값을 두 배로 만든 새로운 배열을 리턴하는 함수를 작성하세요
// sum = nums.map(x => x*2);
// console.log(sum);
// for문, for of문을 이용하여 nums 배열의 모든 값을 더한 값을 리턴하는 함수를 작성하세요
// let result = nums.reduce(function add(sum,currValue){
// return sum + currValue;
// }, 0);
// console.log(result);
//reduce매서드:모든 요소를 더해서 반환
// sum: 누적값 (accumulator) 또는 결과값 (result)으로 이전 콜백 호출에서 반환된 값입니다. 이 값은 콜백 함수가 처음 호출될 때 제공되는 초깃값(0으로 설정)으로 초기화됩니다.
// currValue: 현재 배열 요소의 값 (current value)입니다.
// ★★★★★ Array.prototype.map을 이용하여 nums 배열의 모든 값을 더한 값을 리턴하는 함수를 작성하세요
// function sumArray(nums) {
// sum = nums.map(x => x+=x);
// return sum;
// }
// for, for of문을 이용하여 nums 배열의 최댓값을 리턴하는 함수를 작성하세요
// let max = 0;
// for(let i of nums){
// if(nums[i]>max){
// max = nums[i];
// }
// }
// console.log(max);
// Array.prototype.reduce와 Math.max를 이용하여 nums 배열의 최댓값을 리턴하는 함수를 작성하세요
// let max = Math.max(1, 2, 3, 4, 5, 6, 7, 8, 9);
// console.log(max);
// let max = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// function findMax(arr) {
// return arr.reduce(function(max, curr) {
// return (max > curr ? max : curr);
// 삼항연산자 (참 ? 거짓)
// });
// }
// let result = findMax(nums);
// console.log(result);
// 나이가 20살 이상인 학생을 모두 찾아 name을 프로퍼티로 가진 객체 배열을 리턴하는 함수를 작성하세요
// 결과 : [{name: "뉴렉이"}, {name: "맥북이"}]
const students = [
{ name: "뉴렉이", age: 20 },
{ name: "맥북이", age: 23 },
{ name: "갤럭이", age: 19 },
];
for(let i of students){
if(i.age > 20){
// console.log(i);
}
}
// for, for of문을 이용하여 fruits 배열에서 입력받은 이름으로 객체를 찾아 리턴하는 함수를 작성하세요
//★★★★★문제가 몽소린지 몰겟음
const fruits = [
{ name: "Apple" },
{ name: "Banana" },
{ name: "Grape" },
{ name: "Cheery" },
];
// for(let i of fruits){
// // return i.name;
// console.log(fruits.name);
// }
// Array.prototype.find를 이용하여 fruits 배열에서 입력받은 이름으로 객체를 찾아 리턴하는 함수를 작성하세요
//★★★★★문제가 몽소린지 몰겟음
// function findStudentByName(fruitsArr,name) {
// return fruitsArr.find(fruits => fruits.name === name);
// }
// data는 서버로부터 받은 게시글 리스트 데이터다
// 작성 날짜가 2020년 이후의 글만 리턴하는 함수를 작성하세요
//★★★★★ gpt.....가 도와줌...
// const data = {
// perResult: 5,
// nextToken: "21ads1445",
// items: [
// {
// id: 1,
// title: "반가워요",
// createdAt: "2019-04-07 22:30:52.263319",
// },
// {
// id: 3,
// title: "헬로우 뉴렉",
// createdAt: "2019-05-07 22:30:52.263319",
// },
// {
// id: 111,
// title: "자바는 뉴렉처라는데 맞나요?",
// createdAt: "2020-04-07 22:30:52.263319",
// },
// ,
// {
// id: 441,
// title: "졸리네요",
// createdAt: "2021-04-07 22:30:52.263319",
// },
// {
// id: 1000,
// title: "졸리네요",
// createdAt: "2022-12-07 22:30:52.263319",
// },
// ],
// };
// function getPostsAfter2020(data) {
// return data.items.filter(post => {
// const postDate = new Date(post.createdAt);
// return postDate.getFullYear() >= 2020;
// });
// }
// const postsAfter2020 = getPostsAfter2020(data);
// console.log(postsAfter2020);
// 배열을 인자로 받아 마지막 요소를 제거한 새로운 배열과,마지막 요소를 리턴하는 pop 메서드를 구현하세요
// 입력 : [1, 2, 3, 4, 5]
// 출력 : {5, [1, 2, 3, 4]}
//★★★★★ 모루겟다~~ㅎㅎ
let array = [1, 2, 3, 4, 5];
// function pop(array) {
// let result[] = array[array.length-1];
// return result;
// }
// console.log(result);
class화
// //토요 스터디
// // 조건문
// // ✏️ 1부터 30까지의 숫자 중 반복문과 조건문을 사용하여 4의 배수만 출력되도록 코드를 작성하세요
// import Answer from "./answer.js";
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // ✏️ 1부터 30까지의 숫자 중 2의 배수이면서 3의 배수인 값만 출력해보세요
// // window.onload = function(){
// // let answer = new Answer();
// // console.log(answer.return());
// // }
// // 반복문
// // ✏️ for문을 이용해서, 콘솔에 문자열 “Hello newlecture!”를 3번 출력해보세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // -------------------------------------------------------------------------
// //클래스룸 (못푼문제:★★★★★)
// // for, for of문을 이용하여 홀수만 골라 새로운 배열을 만들어 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // Array.prototype.filter를 이용하여 홀수만 골라 새로운 배열을 만들어 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // for, for of문을 이용하여 nums 배열의 모든 값을 두 배로 만든 새로운 배열을 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // Array.prototype.map을 이용하여 nums 배열의 모든 값을 두 배로 만든 새로운 배열을 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // for문, for of문을 이용하여 nums 배열의 모든 값을 더한 값을 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // reduce매서드:모든 요소를 더해서 반환
// // sum: 누적값 (accumulator) 또는 결과값 (result)으로 이전 콜백 호출에서 반환된 값입니다. 이 값은 콜백 함수가 처음 호출될 때 제공되는 초깃값(0으로 설정)으로 초기화됩니다.
// // currValue: 현재 배열 요소의 값 (current value)입니다.
// // ★★★★★ Array.prototype.map을 이용하여 nums 배열의 모든 값을 더한 값을 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // for, for of문을 이용하여 nums 배열의 최댓값을 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // Array.prototype.reduce와 Math.max를 이용하여 nums 배열의 최댓값을 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // 나이가 20살 이상인 학생을 모두 찾아 name을 프로퍼티로 가진 객체 배열을 리턴하는 함수를 작성하세요
// // 결과 : [{name: "뉴렉이"}, {name: "맥북이"}]
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // for, for of문을 이용하여 fruits 배열에서 입력받은 이름으로 객체를 찾아 리턴하는 함수를 작성하세요
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // Array.prototype.find를 이용하여 fruits 배열에서 입력받은 이름으로 객체를 찾아 리턴하는 함수를 작성하세요
// //★★★★★
// // window.onload = function(){
// // let answer = new Answer();
// // answer.return();
// // }
// // data는 서버로부터 받은 게시글 리스트 데이터다
// // 작성 날짜가 2020년 이후의 글만 리턴하는 함수를 작성하세요
// //★★★★★ gpt.....가 도와줌...
// // 배열을 인자로 받아 마지막 요소를 제거한 새로운 배열과,마지막 요소를 리턴하는 pop 메서드를 구현하세요
// // 입력 : [1, 2, 3, 4, 5]
// // 출력 : {5, [1, 2, 3, 4]}
// //★★★★★ 모루겟다~~ㅎㅎ
// let array = [1, 2, 3, 4, 5];
// // function pop(array) {
// // let result[] = array[array.length-1];
// // return result;
// // }
// // console.log(result);
// export default class Answer{
// return(){
// for(let i=0; i<30; i++){
// if(i%4==0){
// console.log(i);
// }
// }
// }
// }
// ----------------------------1번
// export default class Answer{
// return(){
// for(let i=0; i<30; i++){
// if(i%2==0 && i%3==0){
// console.log(i);
// }
// }
// }
// }
// ----------------------------2번
// export default class Answer{
// return(){
// for(let i=0; i<3; i++){
// console.log("Hello newlecture!");
// return;
// }
// }
// }
// ----------------------------3번
// export default class Answer{
// nums;
// sum;
// constructor(){
// this.nums = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// this.sum = [];
// }
// return(){
// for(let i = 0; i<this.nums.length; i++){
// if(i%2==1 || i==8){
// this.sum.push(i);
// }
// }
// console.log(this.sum);
// }
// }
// ----------------------------4번
// export default class Answer{
// nums;
// sum;
// constructor(){
// this.nums = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// this.sum = [];
// }
// return(){
// for(let i = 0; i<this.nums.length; i++){
// if(i%3==0){
// this.sum = this.nums.filter(i => (i%3)==0);
// }
// }
// console.log(this.sum);
// }
// }
// ----------------------------5번
// export default class Answer{
// nums;
// sum;
// constructor(){
// this.nums = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// this.sum = [];
// }
// return(){
// for(let i of this.nums){
// this.sum = i*2;
// console.log(this.sum);
// }
// }
// }
// ----------------------------6번
// export default class Answer{
// num;
// sum;
// constructor(){
// this.num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// this.sum = [];
// }
// return(){
// this.sum = this.num.map(x => x*2);
// console.log(this.sum);
// }
// }
// ----------------------------7번
// export default class Answer{
// num;
// sum;
// currValue;
// constructor(){
// this.num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// this.sum = [];
// this.currValue = 0;
// }
// return(){
// let result = this.num.reduce(function add(sum,currValue){
// return sum + currValue;
// }, 0);
// console.log(result);
// }
// }
// ----------------------------8번
// export default class Answer{
// num;
// sum;
// max;
// constructor(){
// this.num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// this.sum = [];
// this.max = 0;
// }
// return(){
// for(let i of this.num){
// if(this.num[i]>this.max){
// this.max = this.num[i];
// }
// }
// console.log(this.max);
// }
// }
// ----------------------------10번
// export default class Answer{
// num;
// sum;
// max;
// result;
// constructor(){
// this.num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// this.sum = [];
// this.max = 0;
// this.result = [];
// }
// return(){
// this.max = Math.max(1, 2, 3, 4, 5, 6, 7, 8, 9);
// function findMax(arr) {
// return arr.reduce(function(max, curr) {
// return (max > curr ? max : curr);
// });
// }
// this.result = findMax(this.num);
// console.log(this.result);
// }
// }
// ----------------------------11번
// export default class Answer{
// students;
// constructor(){
// this.students = [
// { name: "뉴렉이", age: 20 },
// { name: "맥북이", age: 23 },
// { name: "갤럭이", age: 19 },
// ];
// }
// return(){
// for(let i of this.students){
// if(i.age >= 20){
// console.log(i);
// }
// }
// }
// }
// ----------------------------12번
// export default class Answer{
// name;
// fruits;
// constructor(){
// this.fruits = [
// { name: "Apple" },
// { name: "Banana" },
// { name: "Grape" },
// { name: "Cheery" },
// ];
// this.name = prompt("과일이름을 입력하세요.");
// }
// return(){
// if(this.name == "Apple"){
// console.log(this.fruits[0]);
// }else if(this.name == "Banana"){
// console.log(this.fruits[1]);
// }else if(this.name == "Grape"){
// console.log(this.fruits[2]);
// }else if(this.name == "Cheery"){
// console.log(this.fruits[3]);
// }
// }
// }
// ----------------------------13번
// export default class Answer{
// name;
// fruits;
// foundNumber;
// constructor(){
// this.fruits = [
// { name: "Apple" },
// { name: "Banana" },
// { name: "Grape" },
// { name: "Cheery" },
// ];
// this.name = prompt("과일이름을 입력하세요.");
// this.foundNumber = 0;
// }
// return(){
// this.foundNumber = this.fruits.find(name => name === "Apple");
// console.log(this.foundNumber);
// }
// }
// ----------------------------★★★★★14번
export default class Answer{
data;
constructor(){
this.data = {
perResult: 5,
nextToken: "21ads1445",
items: [
{
id: 1,
title: "반가워요",
createdAt: "2019-04-07 22:30:52.263319",
},
{
id: 3,
title: "헬로우 뉴렉",
createdAt: "2019-05-07 22:30:52.263319",
},
{
id: 111,
title: "자바는 뉴렉처라는데 맞나요?",
createdAt: "2020-04-07 22:30:52.263319",
},
,
{
id: 441,
title: "졸리네요",
createdAt: "2021-04-07 22:30:52.263319",
},
{
id: 1000,
title: "졸리네요",
createdAt: "2022-12-07 22:30:52.263319",
},
],
};
}
getPostsAfter2020(data) {
return data.items.filter(post => {
const postDate = new Date(post.createdAt);
return postDate.getFullYear() >= 2020;
this.postsAfter2020 = getPostsAfter2020(data);
console.log(postsAfter2020);
});
}
}
// ----------------------------★★★★★15번
728x90