TIL#28-1

DuBu·2023년 7월 17일
0

일본IT JAVA 연수과정

목록 보기
44/61
post-thumbnail

명시적 함수와 익명 함수의 차이점은?

명시적 함수는 이름이 있는 함수이고, 익명 함수는 이름이 없는 함수입니다. 명시적 함수는 function 키워드로 선언하고, 익명 함수는 function () { … } 형식으로 선언합니다.

명시적 함수는 이름이 있으므로 함수 이름으로 참조할 수 있습니다. 예를 들어, 다음 코드는 myFunc이라는 이름의 명시적 함수를 정의하고, myFunc 함수를 호출합니다.

function myFunc() {
  console.log("Hello, world!");
}

myFunc(); // Hello, world!

다음 코드는 익명 함수를 정의하고, 익명 함수 객체를 myFunc 변수에 할당합니다.

const myFunc = () => {
  console.log("Hello, world!");
};

myFunc(); // Hello, world!

- 명시적 함수의 경우 실행을 함수 구현부보다 상단에서 할 수 있지만, 익명 함수의 경우에는 에러가 발생한다.

arguments 에 대하여 설명하시오.

// 자바 스크립트에서 함수가 만들어질 때 생성자 처럼 두 개가 만들어짐.
// 그것이 바로 arguments, this.
function funArgs() {
  for (const index in arguments) {
    console.log(arguments[index]);
  }

  return arguments;
}
let fun = funArgs(1, 2, 3, 4, 5, 6, 7);

console.log(`fun: ${fun.length}`);

로또(배열 함수를 할용 할것) - push, indexof 등등

let lottoArr = [];

while (lottoArr.length < 6) {
  let num = Math.round(Math.random() * 45 + 1);
  if (lottoArr.indexOf(num) < 0) {
    lottoArr.push(num);
  }
}
lottoArr.sort((a, b) => a - b);
console.log(lottoArr);

성적표(배열을 활용 할것)

let arrSub = ["국어", "영어", "수학"];
for (let i in arrSub) {
  arrSub[i] = prompt(arrSub[i]);
}
function getAvg(arr) {
  let sum = 0;

  for (var i in arr) {
    sum += Number(arr[i]);
  }
  return sum / arr.length;
}

function getGrade(avg) {
  let grade = "가";

  if (avg >= 90) {
    grade = "수";
  } else if (avg >= 80) {
    grade = "우";
  } else {
    grade = "가";
  }

  return grade;
}

document.write("평균" + getAvg(arrSub) + "<br>");
document.write("학점" + getGrade(getAvg(arrSub)) + "<br>");

Array Methods

  • join : 배열의 요소들을 문자열로 연결합니다.
const arr = [1, 2, 3, 4, 5];
const str = arr.join(', ');
console.log(str); // 1, 2, 3, 4, 5
  • pop : 배열의 마지막 요소를 제거하고 반환합니다.
const arr = [1, 2, 3, 4, 5];
const lastElement = arr.pop();
console.log(arr); // [1, 2, 3, 4]
console.log(lastElement); // 5
  • shift : 배열의 첫 번째 요소를 제거하고 반환합니다.
const arr = [1, 2, 3, 4, 5];
const firstElement = arr.shift();
console.log(arr); // [2, 3, 4, 5]
console.log(firstElement); // 1
  • reverse : 배열의 요소들의 순서를 반대로 뒤집습니다.
const arr = [1, 2, 3, 4, 5];
arr.reverse();
console.log(arr); // [5, 4, 3, 2, 1]
  • concat : 두 개의 배열을 합쳐 하나의 배열로 만듭니다.
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const arr3 = arr1.concat(arr2);
console.log(arr3); // [1, 2, 3, 4, 5, 6]
  • sort : 배열의 요소들을 정렬합니다.
const arr = [5, 3, 1, 2, 4];
arr.sort();
console.log(arr); // [1, 2, 3, 4, 5]
  • push : 배열의 끝에 요소를 추가합니다.
let arrPush = ["A", "B", "C"];
arrPush.push("D");
console.log(arrPush); // ["A", "B", "C","D"]
  • indexOf : 배열에서 특정 요소의 인덱스를 찾습니다.
const arr = [1, 2, 3, 4, 5];
const index = arr.indexOf(3);
console.log(index); // 2

1개의 댓글

comment-user-thumbnail
2023년 7월 17일

저도 개발자인데 같이 교류 많이 해봐요 ㅎㅎ! 서로 화이팅합시다!

답글 달기