ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 🚩 20250124_수업내용(비트논리연산자/객체/배열*Push*unshift*pop*shift*splice)
    DW아카데미 개발자과정/25년 1월 2025. 1. 24. 17:25

    오전 수업 ) 자바

    비트논리연산자

     

    if문

    조건연산자와 다르게 선택 가능(참과 거짓 둘다 선택 & 참인 경우 선택) 

     

    👀 문제 풀어보기
    1. 두 숫자 중 큰 수 구하기
    2. 철수와 민수 중 누가 발이 더 큰가?

    3. 도시락 가격이 5200원이다 . 내 통장 잔액이 4530이라면 얼마를 이체해야하나?

    4. 바이킹 탑승 조건 - 키가 140 이상 190이하 만 가능

    5. 후룸라이드 탑승 하려면 키가 130이거나 몸무게 45kg 이상만 가능하다.

    글 조건을 적고 !()반대를 적어줘도 같은 결과값이 나온다

     


    오후 수업 ) 자바스크립트

    Early return

          //Early return
          // 예외상황 지정 후 처리 => 예외처리
          const myFn = () => {
            if (name.length === 1) {
              alert("이름을 정확하게 입력하세요");
              return;
            }
            if (name.length >= 12) {
              alert("이름이 너무 긴거 아닌가요...?");
              return;
            }
            alert("좋은 이름이네요");
          };

          myFn();

     

    인자값

    -. 인자를 받아올 수 있다. 위치는 ()안, 여러개의 인자는 ,로 구분

    -. 받아오는 인자의 이름은 함수를 만드는 사람의 임의대로 조절 가능

    -. 순서는 꼭 지켜야 한다.

    const isPersonAdult = (name, age) => {
      // 인자를 받아오 룻 있다. 위치는 ()안, 여러개의 인자는 ,로 구분
      // 받아오는 인자의이름은 함수를 만드는 사람이 임의대로 조절 가능
      // 순서는 꼭 지켜야 한다.

      //   const name = prompt("이름을 알려주세요");

      if (name.length <= 1) {
        return alert("입력을다시해줘야해여");
      }

      //   const age = prompt("그래서 나이가 어떻게 되시나요?");

      if (age < 19) {
        return alert("청소년입니다");
      }
      console.log(`${name}님은 성인입니다`);
    };

    isPersonAdult("최예", "12");
    // 인자값 넣는 순서가 중요하다.

     

    == 함수의 재사용성을 높이는 방법 

     

    객체 object

          // Object 오브젝트 객체
          // {} 메모리를 할당해줌
          const person = {
            name: "신선우", // const name='신선우' => 객체에서 값의 이름: 값
            tel: "01012341234", //객체 안에 값은 ,로 구분한다
          };

          console.log(person);
          console.log(typeof person);

     

    객체 출력 두 가지 방법

    1 첫번째 방법 .값

          // person의 name을 출력하세요
          console.log(person.name);
          // perseon의 tel을 출력하세요
          console.log(person.tel);

    ㄴ object  변수.값의 이름

     

    2. 두번째 방법 ["값"]

          // person의 name을 출력하세요
          console.log(person["name"]);
          // perseon의 tel을 출력하세요
          console.log(person["tel"]);

     

    객체 타입 확인법

          console.log(typeof person.name);

    ㄴ person.name 타입을 확인함

     

    대괄호를 쓸 수 있는 방법

          const 객체값추출기 = (객체, ) => {
            console.log(객체[`${}`]);
          };

          const 객체생성기 = (객체, ) => {
            let copy = { ...객체 }; // 복사하기 ...을 사용해서 변수를 복사합니다. {}안에 복사할 값은 마찬가지로 오브젝트일때만 가능합니다.
            copy[`${값이름}`] = ;

            console.log(copy);
          };
          객체값추출기(me, "tall");
          객체생성기(me, "age", 21);
        </script>

    Array 배열

    객체와 마찬가지로 모든 타입의 값을 담을 수 있다.

          // Array 어레이 배열 = 객체와 마찬가지로 모든 타입의 값을 담을 수 있음

          const array = ["a", 12, false, undefined, null]; //별로 좋지 못한 배열
          const betterArray = [me, me, me];

          console.log(betterArray);

          const anotherArray = [array, array, array];
          console.log(anotherArray);

          console.log(array);
          console.log(typeof array);

    배열에는 같은 형태의 타입을 담는 것이 좋다


    순서 Index

    // array1의 마지막 글자를 출력해 보세요

    array1.push("f");
    console.log(array1[4]);

    // 배열의 최대 인덱스값 수하는 법 = 배열.length-1
    console.log(array1[array1.length - 1]);

    Push 함수 - 마지막값을 추가한다

    // 배열.push함수 // 배열의 마지막에 값을 추가한다
    array1.push("f,", "g", "h");
    // push 함수 ()안에는 값을 집어넣으면 되는데 하나의 값이 아니라 쉼표로 구분해서 여러개의 값을 동시에 넣을 수도 있다.

    배열의 마지막 값을 추가한다

     

    배열.unshift 함수 - 배열 앞에 추가한다

    0, 마지막 자리가 중요하기 때문에

    // 배열.unshift함수
    array1.unshift("0");
    array1.unshift("1");
    array1.unshift("2");

    결과값

    unshift 함수는 push 함수와 사용법이 같다.

    *** ()안에 순서를 그대고 가져다가 앞에 붙임


    배열.pop 함수 - ()안에 아무것도 안넣음

    array1.pop();
    array1.pop(); // 한번에 하나만 지움, 제일 뒤에 있는거 지움

     

    배열.shift 함수 - ()안에 아무것도 안넣음 (pop함수랑 같은 사용법)

     
    // 배열.shift함수
    // 2, 1, 0 지우세요
    array1.shift();
    array1.shift();
    array1.shift();

     

    pop, shift 각각 한 번에 하나씩 지울 수 있음

    차이점

    pop - 뒤, shift - 앞의 아이템을 지움

     

    splice 함수 splice(index순서.지울횟수) 

     첫번째에서 부터 몇개 지울건지, 마지막에서 몇개 지울건지

    * 순서대로 지워진다

     

    // 한번에 N개 지우는 함수
    // aaray1 = ['a', 'b', 'c', 'd', 'e', 'f,', 'g', 'h']

    array1.splice(0, 3);
    // aaray1 = ['d', 'e', 'f,', 'g', 'h']
    array1.splice(0, 3);
    // aaray1 = ['d', 'e']

     

     

    👀 문제 풀어보기

    let array2 = [1, 2, 3, 4, 5];

    // push 사용해서 뒤에 6,7,8 추가
    array2.push(6, 7, 8);
    // unshift 사용해서 앞에 -2, -1, 0
    array2.unshift(0, -1, -2);
    // pop 사용해서 8 제거
    array2.pop();
    // shift 사용해서 -2, -1 제거
    array2.shift();
    array2.shift();
    // splice 사용해서 0~2제거
    // -2, 1, 2, 3, 4, 5, 6, 7
    array2.splice(0, 3);
    // 4~6 제거
    array2.splice(1, 3);
    console.log(array2);

     

    2번째 문제

    let array3 = [
      "박건태",
      "곽찬양",
      "김다하",
      "김현진",
      "서경림",
      "최예나",
      "허승원",
      "이종훈",
    ];
    // 김다하씨만 출석부에서 없애버리세요

    const index = array3.findIndex((name) => {
      if (name === "김다하") {
        return name;
      }
    }); // -1 찾는 사람이 없을 때,
    // 0이상 index가 있다. 즉 사람을 찾음

    // 만약 index라는 변수가 0 이상이면,
    if (index >= 0) {
      array3.splice(index, 1);
    }
    console.log(array3);

     

Designed by Tistory.