JavaScript/2주차 7

7. 2주차 끝 숙제

문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"] 이고 n이 1이면 각 단어의 인덱스 1의 문자 "u" ,"e" , "a" 로 strings를 정렬합니다. 제한 조건 strings는 길이 1 이상, 50이하인 배열입니다. strings의 원소는 소문자 알파벳으로 이루어져 있습니다. strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 모든 strings의 원소의 길이는 n보다 큽니다. 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. 처음에는 아래와 같이 작성했는데, 첫 테스트인 sun, bed, ..

JavaScript/2주차 2023.05.24

6. Set 소개 및 예시코드 연습

Set 1. 고유한 값을 저장하는 자료구조 2. 값만 저장 3. 키를 저장X 4. 값이 중복되지 않는 유일한 요소로만 구성 5. 값 추가, 검색, 값 삭제, 모든 값 제거, 존재 여부 확인 값 추가 const mySet = new Set(); mySet.add('value1'); 예시 const mySet = new Set(); mySet.add('value1'); mySet.add('value2'); mySet.add('value2'); console.log(mySet.size); 위와 같을 때 mySet의 사이즈는 Map이었음 3으로 나오지만 Set은 2로 나온다. 중복된 값은 추가가 되지 않는다. 값을 기반으로 검색 console.log(mySet.has('value1')); console.log(..

JavaScript/2주차 2023.05.23

5. Map 소개 및 예시코드 연습

1. Map, Set의 목적 - 데이터의 구성, 검색, 사용을 기존의 객체 또는 배열보다 효율적으로 처리 1. Map - key - value - key에 어떤 데이터타입도 다 들어올 수 있다. - Map은 키가 정렬된 순서로 저장되기 때문에 모든 타입이 들어올 수 있는거다. - 기능 : 검색, 삭제, 제거(완전한 제거), 여부 확인 //넣는법 const myMap = new Map(); myMap.set('key','value'); //검색 myMap.get('key'); - 반복을 위한 api -> 반복이 가장 중요 - Map의 반복 -> method : keys, values, entries - 반복문은 아래와 같은 모양을 가지고 있다. //for ( of ){} for(const key of my..

JavaScript/2주차 2023.05.23

4. 일급 객체로서의 함수 2

this는 자기자신을 가리킨다. 그래서 아래 person함수안에서 사용하는 this는 person내의 것들을 가리킨다. 즉 person.name인 this.name은 john을 가리킨다. const person = { name:'john', age: 30, isMarried: true, sayHello:function(){ console.log('hello, my name is ' + this.name); }, }; person.sayHello(); 출력 : hello, my name is john sayHello 부분을 화살표함수를 사용하면 아래와 같은 코드가 나오는데, 결과는 undefined가 나온다. const person = { name:'john', age: 30, isMarried: true..

JavaScript/2주차 2023.05.23

3. 일급 객체로서의 함수 1

JS에서 함수는 일급객체라고 한다. - 다른 객체들과 일반적으로 같다라고 생각하면 된다. 다른 프로그래밍 언어와 다르게 함수를 매우 유연하게 사용할 수 있다. 실습 일급객체로서의 함수 1. 변수에 함수를 할당 할 수 있다. - 특징 - 함수가 마치 값으로 취급한다. - 함수가 나중에 사용될 수 있도록 조치가 되어있다. const sayHello = function () { console.log("hello"); }; 2. 함수를 인자로 다른 함수에 전달 할 수 있다. 2-1. 콜백함수 : 매개변수로서 쓰이는 함수 2-2. 고차함수 : 함수를 인자로 받거나 return하는 함수 function callFunc (func) { //매개변수로 받은 변수가 사실, 함수다. func(); } const sayHe..

JavaScript/2주차 2023.05.23

2. ES6 문법 소개 및 실습 2

1. 단축 속성명 // 단축 속성명 : property shorthand //정말 많이 쓰임 const name = "ab"; const newAge = "30"; const age = "20"; //key - value const obj = { name, //스펠링이 같은 경우 과감히 생략가능 age: newAge //스펠링이 다른 경우 생략x } //단축 속성명을 쓴 경우 const obj2 = {name, age}; 2. 전개 구문 - spread operator - destructuring과 함께 가장 많이 사용되는 es6 문법 중 하나이다. let arr = [1,2,3]; console.log(arr); console.log(...arr); 출력 : [1, 2, 3] 1 2 3 이건 아래와 같..

JavaScript/2주차 2023.05.23

1. ES6 문법 소개 및 실습 1

1. 각종 ES6 문법 소개 - JavaScript 버전 중 하나 - 2015년에 발표 - 보다 쉽고 효율적으로 코드 작성 - 대규모 문법적 향상 및 변경 -1. let , const - 이건 직접 코드를 작성해서 확인해보겠습니다. - 2015년도 이전 => var - 1. es6 => let, const - 1_2. arrow function - 첫번째 방법 function add () { //메인로직 } - 두번째 방법 var add = function () { //메인 로직 } - arrow 화살표 방법 var add = () => { return 1; } 또는 return 이 있는 한줄이면 var add = (x) => 1; - 1_3. 삼항 연산자 //condition ? true : false..

JavaScript/2주차 2023.05.23