์ „์ฒด ๊ธ€ 15

[javascript] ๋ฌธ์ž์—ด, ๋ฐฐ์—ด ์ค‘๋ณต ์ œ๊ฑฐ (Set, filter)

new Set([iterable]); ์‚ฝ์ž… ์ˆœ์„œ๋Œ€๋กœ ์š”์†Œ ์ˆœํšŒ, Set์—๋Š” ์ค‘๋ณต๋œ ๊ฐ’์ด ๋“ค์–ด์˜ฌ ์ˆ˜ ์—†๋‹ค. const setTest = new Set(); setTest.add(1);// {1} setTest.add(2);// {1, 2} // 1์„ addํ•ด๋„ set์— 1์ด ์žˆ์–ด์„œ ๋ฌด์‹œ๋จ setTest.add(1);// {1, 2} arr.filter(callback(element[, index[, array]])[, thisArg]) callback : ์š”์†Œ๋ฅผ ๊ฑธ๋Ÿฌ์ฃผ๋Š” ํ•จ์ˆ˜, ์กฐ๊ฑด์— ๋งž์ง€ ์•Š์œผ๋ฉด ์‚ญ์ œ element : ์ฒ˜๋ฆฌํ•  ํ˜„์žฌ ์š”์†Œ index(option) : ์ฒ˜๋ฆฌํ•  ํ˜„์žฌ ์š”์†Œ์˜ ์ธ๋ฑ์Šค const filterArr = [1, 2, 3, 4, 5]; filterArr.filter(function(v){..

Javascript 2021.08.28

[javascript] ๋ฐฐ์—ด ์ตœ๋Œ€๊ฐ’/์ตœ์†Œ๊ฐ’ ๊ตฌํ•˜๊ธฐ (Math.max~)

Math.max() Math.min() : Math.max() ์ž…๋ ฅ๊ฐ’์œผ๋กœ ๋ฐ›์€ 0๊ฐœ ์ด์ƒ์˜ ์ˆซ์ž ์ค‘ ๊ฐ€์žฅ ํฐ ์ˆซ์ž๋ฅผ ๋ฐ˜ํ™˜ : Math.min() ์ž…๋ ฅ๊ฐ’์œผ๋กœ ๋ฐ›์€ 0๊ฐœ ์ด์ƒ์˜ ์ˆซ์ž ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ์ˆซ์ž๋ฅผ ๋ฐ˜ํ™˜ // Math.max() Math.max(5, 7, 1, 3, 9); // 9 // Math.min() Math.min(5, 7, 1, 3, 9); // 1 ๋ฐฐ์—ด์—์„œ ์ตœ๋Œ€/์ตœ์†Œ๊ฐ’์€ Function.prototype.apply(thisArg, [argsArray]) + Math.max() ๋ฅผ ์‚ฌ์šฉํ•ด์„œ Math.max.apply(null, arr)๋กœ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค. apply()๋ฅผ ์“ฐ๊ธฐ ์‹ซ์œผ๋ฉด spread์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. Math.max(...arr) const arr = [5, 7, 1, 3, 2..

Javascript 2021.08.22

React - Movie App ๋งŒ๋“ค๊ธฐ (2)

Movie App ๋งŒ๋“ค๊ธฐ (1) ์—์„œ๋Š” nodejs, vscode, git์„ ์„ค์น˜๋ฅผ ํ–ˆ๋‹ค. ์„ค์น˜์— ์ด์–ด์„œ, vscode์™€ github๋ฅผ ์—ฐ๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. 1. cmd์—์„œ npx create-react-app {ํ”„๋กœ์ ํŠธ ์ด๋ฆ„} ์ž…๋ ฅ npx create-react-app movie_app ( create-react-app ๊ด€๋ จ git : https://github.com/facebook/create-react-app ) react app์ด ๋งŒ๋“ค์–ด์ง€๋ฉด movie_app ํด๋”๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. 2. cmd์—์„œ 'code movie_app'์œผ๋กœ vscode ์—ด๊ธฐ 3. package.json ์ˆ˜์ • "scripts" ๋ถ€๋ถ„์—์„œ "start", "build" ์ œ์™ธํ•˜๊ณ  ์‚ญ์ œ "scripts": { "start": "react..

React 2021.08.08

javascript (Vanilla JS) - jQuery ์ง€์–‘ํ•˜๊ธฐ

Vanlia javascript๋ž€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋‚˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์“ฐ์ง€ ์•Š์€ ์ˆœ์ˆ˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์ด๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์—†์œผ๋‹ˆ ์†๋„๋„ ๋‹น์—ฐ ๋น ๋ฅด๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์—†์–ด์„œ ๋””๋ฒ„๊น…ํ• ๋•Œ๋„ ํŽธํ•˜๋‹ค. ์ฒ˜์Œ ๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ•˜๋ฉด์„œ ๋ฐ”๋กœ ์ œ์ด์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๊ฒŒ ์ œ์ผ ์ต์ˆ™ํ–ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋ช‡๋…„ ์ „๋ถ€ํ„ฐ ์ œ์ด์ฟผ๋ฆฌ๋ฅผ ์ง€์–‘ํ•˜์ž๋Š” ๊ธ€์„ ๋งŽ์ด ๋ดค๋Š”๋ฐ ์—…๋ฌด์ ์œผ๋กœ๋Š” ์•„์ง ์“ฐ๊ธฐ๋•Œ๋ฌธ์— ๋†“์ง€ ๋ชปํ–ˆ๋‹คใ… ใ…  ์ด๋ฒˆ์— ๊ฐœ์ธ์ ์œผ๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋Š”๋ฐ ์ œ์ด์ฟผ๋ฆฌ๋กœ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค๊ณ  ๋ฐ”๋‹๋ผjs๋กœ ๋ฐ”๊พธ๋Š”๊ฑธ ํ•˜๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ.. ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ฐ”๋‹๋ผjs๋กœ ํ•˜๋Š”๊ฒŒ ๋‚ซ๋‹ค๊ณ  ํŒ๋‹จ์ด ๋˜์–ด์„œ ์‹œ์ž‘ํ•ด๋ดค๋‹ค! ์ œ์ด์ฟผ๋ฆฌ๋Š” ์…€๋ ‰ํ„ฐ๊ฐ€ ๋„ˆ๋ฌด ํŽธํ–ˆ์–ด์„œ ์ฒ˜์Œ์— ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์„ฑํ–ˆ์„ ๋•Œ, document.querySelector~ ๋ฅผ ์“ฐ๋Š”๊ฒŒ ์ ์‘์ด ์•ˆ๋๋‹ค. ๊ทธ๋ฆฌ๊ณ  click์ด๋ฒคํŠธ ์ค„๋•Œ๋„ addEventListene..

Javascript 2021.07.27

41ํšŒ SQLD ํ•ฉ๊ฒฉ ํ›„๊ธฐ

1. ์‹œํ—˜ ๊ฒฐ๊ณผ 1๊ณผ๋ชฉ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ์ดํ•ด, 2๊ณผ๋ชฉ SQL ๊ธฐ๋ณธ ๋ฐ ํ™œ์šฉ ๊ฐ๊ฐ 40์  ์ด์ƒ, ํ•ฉ์ณ์„œ ํ‰๊ท  60์  ์ด์ƒ์„ ๋ฐ›์•„์•ผ ํ•ฉ๊ฒฉ์ด๋‹ค. 1๊ณผ๋ชฉ์—์„œ ๊ณผ๋ฝ(40์  ๋ฏธ๋งŒ) ์กฐ์‹ฌํ•˜๋ผ๋Š” ๋ธ”๋กœ๊ทธ ๊ธ€์„ ๋ณด๊ณ  ์ „๋‚ ์—๋Š” 1๊ณผ๋ชฉ์—์„œ ํ‹€๋ฆฐ ๋ฌธ์ œ๋งŒ ๋ดค๋‹ค. 2. ๊ณต๋ถ€ ๋ฐฉ๋ฒ• - ์ฑ…, ๊ธฐ์ถœ๋ฌธ์ œ ๋ฌธ์ œ์ง‘์€ ํ•œ๊ตญ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ง„ํฅ์›์—์„œ ๋‚˜์˜จ 'SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ'๋กœ๋งŒ ๊ณต๋ถ€ํ–ˆ๋‹ค. ๋…ธ๋žญ์ด๋ผ๊ณ  ๋ถˆ๋ฆฐ๋‹ค. 'SQL ์ „๋ฌธ๊ฐ€ ๊ฐ€์ด๋“œ'๋ผ๋Š” ํฐ์ƒ‰ ์ฑ…์€ ์•ˆ๋ด์„œ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ๋…ธ๋žญ์ด๋กœ ์ถฉ๋ถ„ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. 1๊ณผ๋ชฉ์€ 52๋ฒˆ๊นŒ์ง€, 2๊ณผ๋ชฉ์€ 146๋ฒˆ๊นŒ์ง€ ์žˆ๋‹ค. ํ•˜๋ฃจ์— 2-30๋ฌธ์ œ์”ฉ ํ’€๊ณ  ์˜ค๋‹ต๋…ธํŠธ๋ฅผ ๊ณ„ํšํ–ˆ๋Š”๋ฐ 2๊ณผ๋ชฉ์ด ํ‘ธ๋Š”๋ฐ ์‹œ๊ฐ„์ด ์˜ค๋ž˜๊ฑธ๋ ค์„œ 1,2๊ณผ๋ชฉ ํ•ฉ์ณ์„œ 12์ผ์ •๋„ ๊ฑธ๋ฆฐ ๊ฒƒ ๊ฐ™๋‹ค. ์ดˆ๋ฐ˜์—๋Š” ์˜์š• ๋„˜์น˜๋‹ˆ๊นŒ 2๊ณผ๋ชฉ ํ’€๊ณ  ๊ทธ๋‹ค์Œ์— 1๊ณผ๋ชฉ์„ ํ‘ธ๋Š”๊ฑธ ์ถ”์ฒœํ•œ๋‹ค. ๋ชจ..

๊ธฐํƒ€ 2021.07.14

[javascript] ๋ฐฐ์—ด ์ •๋ ฌํ•˜๊ธฐ (๋ฌธ์ž, ์ˆซ์ž, ๊ฐ์ฒด ์˜ค๋ฆ„์ฐจ์ˆœ, ๋‚ด๋ฆผ์ฐจ์ˆœ)

๋ฌธ์ž ์ •๋ ฌ const arrStr = ['world', 'javascript', 'hello']; // ๋ฌธ์ž์—ด์˜ ์•ž๊ธ€์ž 'w', 'j', 'h' ์•ž๊ธ€์ž๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ arrStr.sort(); // ['hello', 'javascript', 'world'] ์ˆซ์ž ์ •๋ ฌ const arrNum = [11, 2, 33, 4]; // ์ˆซ์ž๋Š” ์•„์Šคํ‚ค ์ฝ”๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ˆซ์ž ํฌ๊ธฐ๋Œ€๋กœ ์ •๋ ฌ์ด ์•ˆ๋จ arrNum.sort(); // [11, 2, 33, 4] // ์œ„์˜ ํ•ด๊ฒฐ๋ฐฉ์•ˆ์œผ๋กœ๋Š” .sort(function(a,b){return a-b;}); arrNum.sort(function(a, b){ return a-b; // [2, 4, 11, 33] (์˜ค๋ฆ„์ฐจ์ˆœ) }); arrNum.sort(function(..

Javascript 2021.06.13

[javascript] ๋ฐฐ์—ด ์š”์†Œ ์ถ”๊ฐ€( push / unshift ), ์‚ญ์ œ ( pop / shift )

๋ฐฐ์—ด์— ์š”์†Œ ์ถ”๊ฐ€ ( push, unshift ) const arr = ['b', 'c', 'd']; // push : ๋ฐฐ์—ด์˜ ๋์— ์š”์†Œ ์ถ”๊ฐ€ arr.push('e');// ['b', 'c', 'd', 'e'] // unshift : ๋ฐฐ์—ด์˜ ์•ž์— ์š”์†Œ ์ถ”๊ฐ€ arr.unshift('a')// ['a', 'b', 'c', 'd', 'e'] ๋ฐฐ์—ด์— ์š”์†Œ ์‚ญ์ œ ( pop, shift ) const arr2 = ['a', 'b', 'c', 'd', 'e']; // ๋ฐฐ์—ด์˜ ์•ž ์š”์†Œ๋ฅผ ์‚ญ์ œ arr2.shift();// 'a' console.log(arr);// ['b', 'c', 'd', 'e'] // ๋ฐฐ์—ด์˜ ๋ ์š”์†Œ๋ฅผ ์‚ญ์ œ arr2.pop();// 'e' console.log(arr);// ['c', 'd', 'e']

Javascript 2021.06.12

[javascript] ์ง„์ˆ˜ ๋ณ€ํ™˜ / String, Number ๋ณ€ํ™˜ (String / toString / Number / parseInt)

์ˆซ์ž๋ฅผ ๋ฌธ์ž๋กœ, ๋ฌธ์ž๋ฅผ ์ˆซ์ž๋กœ ๋ณ€ํ™˜ ์ˆซ์ž -> ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ : String(num), num.toString() ๋ฌธ์ž -> ์ˆซ์ž๋กœ ๋ณ€ํ™˜ : Number(str), parseInt(str) const num = 10; const str = '10'; // number -> string String(num);// '10' num.toString(); // '10' // typeof() : ๋ฐ์ดํ„ฐํƒ€์ž…์„ ํ™•์ธ typeof(num.toString()); // 'string' // string -> number Number(str); // 10 parseInt(str); // 10 (์ •์ˆ˜ํ˜• ์ˆซ์ž) typeof(parseInt(str)); // 'number' toString(), parseInt() ์ง„์ˆ˜ ๋ณ€ํ™˜ 10..

Javascript 2021.06.09

[javascript] ๋ฌธ์ž์—ด์—์„œ ํŠน์ • ๋ฌธ์ž ์œ„์น˜ ์ฐพ๊ธฐ indexOf / includes / findIndex

str.indexOf(searchValue[, fromIndex]) searchValue : ์ฐพ์œผ๋ ค๋Š” ๋ฌธ์ž์—ด fromIndex(Optional) : ๋ฌธ์ž์—ด์—์„œ ์ฐพ๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ธ๋ฑ์Šค ๊ฐ’ const str = 'Hello, world!'; const arr = [0, 1, 2, 3, 4, 5]; // indexOf(์ฐพ์„ ๋ฌธ์ž, n๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ถ€ํ„ฐ ์ฐพ๊ธฐ) : ์œ„์น˜ ์ƒ๋žต ๊ฐ€๋Šฅ str.indexOf('lo')// 3(3๋ฒˆ์งธ ์ธ๋ฑ์Šค์— ์žˆ์Œ) str.indexOf('d!')// 11(11๋ฒˆ์งธ ์ธ๋ฑ์Šค์— ์žˆ์Œ) str.indexOf('d~')// -1(์—†์Œ : -1 ๋ฐ˜ํ™˜) str.indexOf('l', 3)// 3(3๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ถ€ํ„ฐ ์ฐพ์•„์„œ 3๋ฒˆ์งธ ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜) str.indexOf('l', 4) // 10..

Javascript 2021.06.08

[javascript] ๋ฌธ์ž์—ด ์ž๋ฅด๊ธฐ substr / substring / slice / splice / split

javascript์—์„œ ๋ฌธ์ž์—ด, ๋ฐฐ์—ด์„ ์ž๋ฅด๋Š” ๋ฉ”์†Œ๋“œ๋กœ๋Š” substr / substring / slice / splice / split ๋‹ค์„ฏ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. 1. substr : ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๊ธธ์ด(์ƒ๋žต ๊ฐ€๋Šฅ)๋ฅผ ์ •ํ•ด์„œ ๋ฌธ์ž์—ด ์ž๋ฅด๊ธฐ 2. substring : ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๋ ์ธ๋ฑ์Šค(์ƒ๋žต ๊ฐ€๋Šฅ)๋ฅผ ์ •ํ•ด์„œ ๋ฌธ์ž์—ด ์ž๋ฅด๊ธฐ 3. slice : ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๋ ์ธ๋ฑ์Šค(์ƒ๋žต ๊ฐ€๋Šฅ)๋ฅผ ์ •ํ•ด์„œ ๋ฌธ์ž์—ด ๋˜๋Š” ๋ฐฐ์—ด ์ž๋ฅด๊ธฐ 4. splice : ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๊ธธ์ด(์ƒ๋žต ๊ฐ€๋Šฅ)๋ฅผ ์ •ํ•ด์„œ ๋ฐฐ์—ด ์ž๋ฅด๊ธฐ 5. split : ๋ฌธ์ž์—ด์„ ๋‚˜๋ˆŒ ๊ตฌ๋ถ„์ž์™€, ์ž˜๋ผ์ง„ ๋ฌธ์ž์—ด์˜ ์ตœ๋Œ€ ๊ฐฏ์ˆ˜(์ƒ๋žต ๊ฐ€๋Šฅ)๋ฅผ ์ •ํ•ด์„œ ๋ฌธ์ž์—ด ์ž๋ฅด๊ธฐ const str = 'Hello, world!'; const arr = [0, 1, 2, 3, 4, 5]; const ..

Javascript 2021.06.06