내일 배움 캠프 4기 TIL(22.11.10)

baesee·2022년 11월 10일
0

내일배움캠프

목록 보기
10/75

목차

  • 알고리즘 / 프로그래머스
  • 자바스크립트

알고리즘 / 프로그래머스

자료구조 4주차 물론 3주차도 다 이해 못해서 ^^ 아직 쩔쩔 매고 있지만 진도는 다 나가서 다 들어보자는 생각으로!!
트리 , 힙 , 그래프 ,DFS/BFS, Dynamic Programming
을 들었는데....문제 푸실때는 진짜 따라가지도 못해서 일단 듣기만하고 정리하고 프로그레스 들어가서 자바스크립트로 문제 5문제 더풀었나 근데 1문제 빼고는 못풀었다...1단계가 갑자기 너무 어려워지고 내생각에는 메소드 공부가 덜된거 같아서 메소드를 하나씩 정리해서 공부 해볼려고 한다 그렇다고 강의를 안듣고 이해를 안하는것도 아니지만 남는시간에 더 공부해서 메소드를 정확하게 인지하고
알고리즘 문제를 접근하는게 좋을거 같다는 생각이 들었다


자바스크립트

객체 메소드(objext methods)

  • object.assign
	object.assign() //객체 복사

	Object.assign(target, ...sources)

	예제)
    const obj = { a: 1 };
	const copy = Object.assign({}, obj);
	console.log(copy); // { a: 1 }
  • object.keys / Object.values
	object.keys() //키 배열 반환

	Object.keys(obj)
	
	// 단순 배열
    const arr = ['a', 'b', 'c'];
    console.log(Object.keys(arr)); 
	// console: ['0', '1', '2']

    // 배열형 객체
    const obj = { 0: 'a', 1: 'b', 2: 'c' };
    console.log(Object.keys(obj)); 
	// console: ['0', '1', '2']

    // 키와 순서가 무작위인 배열형 객체
    const anObj = { 100: 'a', 2: 'b', 7: 'c' };
    console.log(Object.keys(anObj)); 
	// console: ['2', '7', '100']

    // getFoo 는 열거할 수 없는 속성입니다.
    const myObj = Object.create({}, {
      getFoo: {
        value: function () { return this.foo; }
      }
    });
    myObj.foo = 1;
    console.log(Object.keys(myObj)); 
	// console: ['foo']

		object.values //값 배열 반환
	
		Object.values(obj)
  • object.entries
	object.entries // 키/값 배열 반환
	
	object.entries(obj)
  • object.fromEntries
	object.fromEntries // 키/값 배열을 객체로

	object.fromEntries(arr)

Number / Math

  • toString
	10진수를 => 2진수 / 16진수로 변환
    //2진수를 다시 10진수로 만들려면 parseInt()
    예제)
   	let num = 10;
	num.toString(); // "10"
	num.toString(2); // "1010"
	
	let num2 = 255;
	num.toString(16); // "ff"
  • Math.PI / Math.ceil / Math.floor / Math.round
	Math.PI //3.14*********

	Math.ceil //올림
	
	Math.floor //내람

	Math.round //반올림
	
	예제)
    let num1 = 5.1;
    let num2 = 5.7;

	Math.ceil(num1) // 6
	Math.ceil(num2) // 6
   	
	Math.floor(num1) // 5
	Math.floor(num2) // 5

	Math.round(num1) // 5
	Math.round(num2) // 6
  • toFixed
	let userRate = 30.1234;
	소수점 2째자리 까지 표현(셋째 자리에서 반올림)
	
	userRate.toFixed(2); // "30.12" 소수점 2쨰
	userRate.toFixed(0); // "30"	정수
	userRate.toFixed(6); // "30.123400" 뒤에없으면 0으로 채움
  • parseInt
	parseInt() // 숫자로 바꿔줌
	
	let margin = "10px";
	
	parseInt(margin) // 10
	Number(margin)	// NaN
	
	let redColor = 'f3';
	parseInt(redColor); //NaN  처음이 문자면 NaN
	
	let redColor = 'f3';
	parseInt(redColor,16); // 243 16진수로
	
	parseInt('11',2); // 3 2진수로바꿈
	
	

알고리즘 하다가 진짜 내가 자바스크립트 공부를 날리면서 했구나 느껴서 프로그래머스 조금 풀다가 다시 강의 보면서 예제 하나하나 찾으면서 메소드 공부하고 있다.....

0개의 댓글