๐Ÿ‘ฉ‍๐Ÿ’ป/JavaScript 22

[leetCode] Add Binary

Add Binary Input: a = "11", b = "1" Output: "100" Input: a = "1010", b = "1011" Output: "10101" String ํƒ€์ž…์œผ๋กœ ์ฃผ์–ด์ง€๋Š” ์ด์ง„์ˆ˜๋ฅผ ๋”ํ•ด์„œ String ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. /** * @param {string} a * @param {string} b * @return {string} */ // First Try var addBinary = function(a, b) { let carry = 0 const res = [] const aLen = a.length; const bLen = b.length; for (let i = aLen - 1, j = bLen - 1; 0 = 0 ? Number(a[i]) : 0; let..

[JavaScript] ํ•จ์ˆ˜ ์ƒ์„ฑ์ž์™€ ํด๋ž˜์Šค์˜ ์ฐจ์ด

ํ•จ์ˆ˜ ์ƒ์„ฑ์ž(Constructor Functions)๋ž€? ํ•จ์ˆ˜ ์ƒ์„ฑ์ž๋Š” ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ๋Š” 'ํด๋ž˜์Šค'์™€ ๋™์˜์–ด๋‹ค. ์–ด๋–ค ๊ฒฝ์šฐ ์‚ฌ๋žŒ๋“ค์€ ์ฐธ์กฐ ํƒ€์ž…(Reference Types), ํด๋ž˜์Šค(Classes), ๋ฐ์ดํ„ฐ ํƒ€์ž…, ์•„๋‹ˆ๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ์ƒ์„ฑ์ž๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ํด๋ž˜์Šค์— ์•„์ง ์ต์ˆ™ํ•˜์ง€ ์•Š๋‹ค๋ฉด, ์–ด๋–ค ์†์„ฑ(properties)๊ณผ ํ–‰๋™(functions)์„ ์ •์˜ํ•˜๋„๋ก ํ•ด์ฃผ๊ณ , ๊ทธ ์†์„ฑ๊ณผ ํ–‰๋™์„ ํ†ตํ•ด ์—ฌ๋Ÿฌ ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ์ƒ์„ฑ์ž๋ผ๊ณ  ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค. ํด๋ž˜์Šค๋Š” ๊ฐ์ฒด๋กœ์„œ ์ง‘์„ ์ง“๊ธฐ ์œ„ํ•œ ์ฒญ์‚ฌ์ง„์ด๋ผ๋Š” ๋น„์œ ๋ฅผ ๋งŽ์ด ํ•œ๋‹ค. ์—ฌ๋Ÿฌ ์ง‘์ด ๋‹จ ํ•˜๋‚˜์˜ ์ฒญ์‚ฌ์ง„์œผ๋กœ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ, ์—ฌ๋Ÿฌ ๊ฐ์ฒด๋„ ๋‹จ ํ•˜๋‚˜์˜ ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ๋‹ค. function Person(name, position) { this.name ..

[JavaScript] ์ฝœ์Šคํƒ, ์ฝœ๋ฐฑํ, ์ด๋ฒคํŠธ ๋ฃจํ”„์˜ ๋™์ž‘ ์›๋ฆฌ๋ฅผ ํ†ตํ•œ ๋น„๋™๊ธฐ ํ•จ์ˆ˜์˜ ์‹คํ–‰ ๊ณผ์ •

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋‹น์—ฐํžˆ ์˜์‹ฌ ์—†์ด ์‚ฌ์šฉํ•˜๋˜ ๋น„๋™๊ธฐ ํ•จ์ˆ˜ ์‹คํ–‰ ๊ณผ์ •์„ ๋“ค์—ฌ๋‹ค๋ณผ ๊ธฐํšŒ๊ฐ€ ์ƒ๊ฒผ๋‹ค. ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ์–ธ์–ด์ธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํ•œ ์ค„ ํ•œ ์ค„ ์ˆœ์„œ๋Œ€๋กœ ๋™๊ธฐ์ ์œผ๋กœ ์‹คํ–‰๋˜์–ด์•ผ ํ•˜๋ฉฐ, ๋‘ ๊ฐ€์ง€ ์ด์ƒ์˜ ํƒœ์Šคํฌ๋ฅผ ๋ณ‘๋ ฌ์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์–ด์•ผ ํ•˜๋Š”๋ฐ, setTimeout์ด๋‚˜ ์›น API, ES6์˜ promise ๊ฐ™์€ ๋น„๋™๊ธฐ ์ฝœ๋ฐฑ์€ ์–ด๋–ป๊ฒŒ ์‹คํ–‰๋˜๊ณ  ์žˆ๋Š” ๊ฒƒ์ผ๊นŒ? ์šฐ์„  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋‘ ๊ฐ€์ง€ ์ด์ƒ์˜ statements๊ฐ€ ๋ณ‘๋ ฌ์ ์œผ๋กœ ์‹คํ–‰๋˜์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ์€ ๋งž๋‹ค. ์‹คํ–‰์€ ํ•ญ์ƒ ๋™๊ธฐ์ ์ด๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„ V8์€ ํ”„๋กœ๊ทธ๋žจ ๋‚ด ๋ชจ๋“  ๋ณ€์ˆ˜์˜ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น์ด ์ผ์–ด๋‚˜๋Š” Memory Heap๊ณผ ์Šคํƒ ํ”„๋ ˆ์ž„์ด ์Œ“์ด๋Š” ์ฝœ ์Šคํƒ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ  ์ด ์ฝœ ์Šคํƒ(ํ˜ธ์ถœ ์Šคํƒ)์ด ํ•˜๋‚˜์ด๋ฏ€๋กœ ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์ด๋‹ค. ํ•˜์ง€๋งŒ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋˜๋Š” ๋ธŒ๋ผ์šฐ์ €..

[JavaScript] ์—„๊ฒฉ ๋ชจ๋“œ (use strict)

์—„๊ฒฉ ๋ชจ๋“œ๋Š” ES5์— ๋„์ž…๋œ ๋ฌธ๋ฒ•์ด๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ตœ์ƒ๋‹จ์— use strict ๋ฌธ๊ตฌ๋ฅผ ๋„ฃ์–ด ์‹คํ–‰ํ•œ๋‹ค. ๋˜๋Š” ํ•จ์ˆ˜ ๋‚ด์—์„œ๋„ ์ž‘์„ฑ ๊ฐ€๋Šฅํ•˜๋‹ค. ์—„๊ฒฉ ๋ชจ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์ „์—๋Š” ๊ด€์šฉ์ ์œผ๋กœ ๋Š์Šจํ•˜๊ฒŒ ํ—ˆ์šฉ๋˜๋Š” '์˜ค๋ฅ˜๋ฅผ ์œ ๋ฐœํ•  ๊ฐ€๋Šฅ์„ฑ ์žˆ๋Š” ๋ฌธ๋ฒ•' ๋•Œ๋ฌธ์— ๋””๋ฒ„๊น…์ด ์–ด๋ ค์šด ์š”์ธ์ด ๋˜๊ณค ํ–ˆ๋‹ค. strict mode๋ฅผ ์‹คํ–‰ํ•ด์ฃผ๋ฉด ๋ฏธ๋ฆฌ ํ•ด๋‹น ์—๋Ÿฌ๋ฅผ ์ถœ๋ ฅํ•ด์„œ ๋ฐ”๋กœ์žก์„ ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค€๋‹ค. ์—…๋ฐ์ดํŠธ ๋  ์ƒˆ๋กœ์šด ๋ช…์„ธ์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์— ๋Œ€์‘ํ•˜๊ธฐ๋„ ํŽธํ•˜๊ณ , ์ตœ์ ํ™” ์ด์Šˆ์—๋„ ๋„์›€์ด ๋˜์–ด์„œ use strict๋ฅผ ์‚ฌ์šฉ์ด ๊ถŒ๊ณ ๋œ๋‹ค. ๋ฆฌ์•กํŠธ, ๋ทฐ ๊ฐ™์€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์ž๋™์œผ๋กœ ์—„๊ฒฉ ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค˜์„œ ํฌ๊ฒŒ ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š์•˜์ง€๋งŒ, ๋ฐ”๋‹๋ผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•  ๋•Œ๋Š” ์ถ”๊ฐ€ํ•ด์ฃผ๋Š” ์Šต๊ด€์ด ์ข‹๊ฒ ๋‹ค. ๋ณดํ†ต npx๋กœ CRA์„ ํ•˜๊ณ  ๋‚˜๋ฉด ์•„..

[JavaScript] call, apply and bind

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” ํ•จ์ˆ˜๋„ ๊ฐ์ฒด๋กœ ๋‹ค๋ค„์ง„๋‹ค. call(), apply(), bind()๋Š” ๋ชจ๋‘ ํ•จ์ˆ˜ ์‹คํ–‰์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๋ฉ”์†Œ๋“œ์ด๋‹ค. call()๊ณผ apply()๋Š” ES5์— ๋„์ž…๋œ ๋ฌธ๋ฒ•์ด๊ณ  bind()๋Š” ๊ทธํ›„ ES5์— ๋„์ž…๋˜์—ˆ๋‹ค. ํ•จ์ˆ˜๋ฅผ ์ฆ‰์‹œ ์‹คํ–‰ํ•˜๊ณ ์ž ํ•  ๋•Œ๋Š” call()๊ณผ apply()๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , bind()๋Š” ๋‚˜์ค‘์— bound๋œ ํ•จ์ˆ˜๋ฅผ ๋ฆฌํ„ด ๋ฐ›์•„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์ดํ›„์— ์‹คํ–‰๋  ํ•จ์ˆ˜๋ฅผ ์ƒ๊ฐํ•˜๋ฉฐ ์จ์•ผ ํ•œ๋‹ค. const user = { name: 'Hannah' } const profile = function (location, language) { return `${this.name} is a ${language} programmer, who lives in ${location}`; } consol..

[JavaScript] ์ •๊ทœ์‹ ์ด์šฉํ•œ String Date ๊ฐ€๊ณตํ•˜๊ธฐ

'20210430' ๊ฐ™์€ ๋‚ ์งœ ๋ฌธ์ž์—ด์„ Date ๊ฐ์ฒด๋กœ ๋งŒ๋“ค ๋•Œ, ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์–ด์„œ '2020-04-30' ํ˜•ํƒœ๋กœ ๋งŒ๋“ค์–ด์ฃผ๊ณ ์ž ํ–ˆ๋‹ค. ์ •๊ทœ์‹์„ ์ด์šฉํ•˜๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ฐ€๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ํ•˜์ดํ”ˆ์œผ๋กœ ๊ตฌ๋ถ„์ง€์„ ๋•Œ๋„ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.

[Programmers] JavaScript, ์™„์ „ ํƒ์ƒ‰, ๋ชจ์˜๊ณ ์‚ฌ ๋ฌธ์ œ

๋ฌธ์ œ 1, 2, 3๋ฒˆ ํ•™์ƒ์ด ์žˆ๋‹ค. ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ •๋‹ต์ง€๊ฐ€ ๋ฐฐ์—ด๋กœ ์ฃผ์–ด์ง€๊ณ , ๊ฐ ํ•™์ƒ์€ ๋‚˜๋ฆ„์˜ ์ฐ๋Š” ํŒจํ„ด์„ ๊ฐ–๊ณ  ์žˆ๋‹ค. ์ด๋•Œ ๊ฐ€์žฅ ๋งŽ์ด ๋งž์ถ˜ ํ•™์ƒ๋“ค์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค. programmers.co.kr/learn/challenges ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์ฐจ๊ทผ์ฐจ๊ทผ, ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. programmers.co.kr ์ฝ”๋“œ ํ’€์ด ์ฒซ ๋ฒˆ์งธ ํ•จ์ˆ˜ solution(answers)๋Š” padEnd๋กœ ์‹œ์ž‘ํ–ˆ๋‹ค. ์‹ ๊ทœ ์•„์ด๋”” ์ถ”์ฒœ ๋ฌธ์ œ์—์„œ padEnd๋ฅผ ์ฒ˜์Œ ์•Œ๊ฒŒ ๋ผ์„œ ์—ฐ์Šต ๊ฒธ ์‚ฌ์šฉํ•ด๋ดค๋‹ค. ์šฐ์„  ๊ฐ ํ•™์ƒ๋“ค์˜ ์ฐ๋Š” ํŒจํ„ด์„ students ๋ณ€์ˆ˜์— ๋‹ด๋Š”๋‹ค. map์„ ๋Œ๋ฉฐ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง„ answer์˜ length๋งŒํผ, student๋ผ๋Š” ๊ฐ ํ•™์ƒ๋“ค์˜ ์ฐ๋Š” ํŒจํ„ด์„ ๋ฐ˜๋ณตํ•ด์„œ ๋„ฃ์–ด์ฃผ์—ˆ๋‹ค. ๋งŒ์ผ ๋ฌธ์ œ๊ฐ€ 8๋ฌธ์ œ๋ผ ํ•˜๋ฉด 1..

[Programmers] JavaScript, 3์ง„๋ฒ• ๋’ค์ง‘๊ธฐ (toString(), parseInt(), reduce())

programmers.co.kr/learn/challenges ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์ฐจ๊ทผ์ฐจ๊ทผ, ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. programmers.co.kr ๋ฌธ์ œ ์ž์—ฐ์ˆ˜ n์ด ์ฃผ์–ด์งˆ ๋•Œ, n์„ 3์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊พธ๊ณ , ์ด๋ฅผ ์•ž๋’ค๋กœ ๋’ค์ง‘๋Š”๋‹ค. ์ด๋ฅผ ๋‹ค์‹œ 10์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค. ์ฝ”๋“œ ํ’€์ด 10์ง„๋ฒ•์„ 2์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊พธ๋Š” ๋กœ์ง๊ณผ ๋™์ผํ•˜๋‹ค. 2๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€ ๋Œ€์‹  3์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ num์— ๋‹ด๋Š” ์‹์ด๋‹ค. n์ด 3๋ณด๋‹ค ์ž‘์€ ๊ฒฝ์šฐ๋ฅผ ๊ณ ๋ คํ•ด num += n์„ ์žŠ์ง€ ๋ง๊ณ  ์ถ”๊ฐ€ํ•ด์ค€๋‹ค. 10์ง„๋ฒ•์„ 3์ง„๋ฒ•์œผ๋กœ๋งŒ ๋ฐ”๊พธ๋Š” ๋ฐ ๊ทธ์น˜์ง€ ์•Š๊ณ  ์ด๋ฅผ ๋’ค์ง‘๊ธฐ ๋•Œ๋ฌธ์— ์œ„ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์ผ๋‹ค. parseInt()๋Š” ๋ฌธ์ž์—ด ์ธ์ž๋ฅผ ๊ตฌ๋ฌธ๋ถ„์„ํ•ด ํŠน์ • ์ง„์ˆ˜์˜ ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ธ์ž๊ฐ€ ๋ฌธ์ž์—ด์ด ์•„๋‹ˆ๋ผ๋ฉด ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค. ๋’ค์ง‘ํžŒ 3์ง„๋ฒ•์€ ๋ฌธ์ž์—ด์ด๊ณ , ์ด..

[Programmers] JavaScript, ํƒ์š•๋ฒ•, ์ฒด์œก๋ณต ๋ฌธ์ œ (Destructuring Assignment/fill)

programmers.co.kr/learn/courses/ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ•์˜ ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์ฐจ๊ทผ์ฐจ๊ทผ, ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. programmers.co.kr ํƒ์š•๋ฒ• ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ์š” ํƒ์š•๋ฒ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ™œ์šฉํ•˜๋Š” ๋ฌธ์ œ. ํƒ์š•๋ฒ•(Greedy Algorithm)์€ ๋™์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ(๋˜๋Š” ๋™์  ๊ณ„ํš๋ฒ•, Dynmaic Programming) ์‚ฌ์šฉ ์‹œ ์ง€๋‚˜์น˜๊ฒŒ ๋งŽ์€ ์ผ์„ ํ•œ๋‹ค๋Š” ๊ฒƒ์—์„œ ๊ณ ์•ˆ๋œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ผ๊ณ  ํ•œ๋‹ค. ๋‘ ๋ฐฉ๋ฒ•์€ ์„œ๋กœ ์ฐจ์ด์ ์ด ์กด์žฌํ•˜๋ฉฐ, ๋ณด์™„ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ™œ์šฉ์ด ๋œ๋‹ค๊ณ  ํ•œ๋‹ค. ๋™์  ๊ณ„ํš๋ฒ•์€ ์ „์ฒด ๋ฌธ์ œ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ•˜์œ„ ๋ฌธ์ œ๋กœ ์ชผ๊ฐœ์–ด ํ’€๊ณ , ํ•˜์œ„ ๋ฌธ์ œ์˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ๊ฒฐํ•ฉํ•ด ์ตœ์ข… ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ๋‹ค. ํ”ผ๋ณด๋‚˜์น˜์˜ ์ˆ˜์—ด์ด ๋Œ€ํ‘œ์ ์ธ ์˜ˆ์ด๋‹ค. ์ด๋Ÿฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์€ ํšจ์œจ์„ ์œ„ํ•ด ํ•จ์ˆ˜ ๊ฒฐ๊ณผ ๊ฐ’์„ ์ €์žฅํ•˜๋ฉฐ ์ตœ์ข… ๊ฒฐ๊ณผ๋ฌผ์„ ์ฐพ๋Š”๋‹ค. ..

[Programmers] JavaScript์—์„œ ๋ฌธ์ž์—ด ๋‚ด p์™€ y์˜ ๊ฐœ์ˆ˜ ๊ตฌํ•˜๊ธฐ

๋ฌธ์ œ ๋Œ€๋ฌธ์ž, ์†Œ๋ฌธ์ž๊ฐ€ ๊ตฌ๋ถ„ ์—†์ด ์ฃผ์–ด์ง€๋Š” ๋ฌธ์ž์—ด s์—์„œ p์™€ y์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๊ณ , ๊ฐœ์ˆ˜๊ฐ€ ๋™์ผํ•˜๋ฉด true, ์•„๋‹ˆ๋ฉด false๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ด๋•Œ p์™€ y๊ฐ€ ๋ชจ๋‘ ํ•˜๋‚˜๋„ ์—†๋‹ค๋ฉด ํ•ญ์ƒ true๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. (๊ฐœ์ˆ˜ ๋น„๊ต ์‹œ ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ X) programmers.co.kr/learn/challenges ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์ฐจ๊ทผ์ฐจ๊ทผ, ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. programmers.co.kr ์ฝ”๋“œ ํ’€์ด str.match(์ •๊ทœ์‹) ๋ฉ”์„œ๋“œ๋Š” ์ผ์น˜ํ•˜๋Š” ์ •๊ทœ์‹ ๋ฌธ์ž๊ฐ€ ์žˆ์„ ๋•Œ ์ด๋ฅผ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์—†์œผ๋ฉด null์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋ฌธ์ œ์—์„œ p๋‚˜ y๊ฐ€ ํ•˜๋‚˜๋„ ์กด์žฌํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ์—” ํ•ญ์ƒ true๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฏ€๋กœ, ํ•จ์ˆ˜์˜ ์ฒซ ๋ฒˆ์งธ ๋ถ„๊ธฐ์—๋Š” str.match([p|y]/gi) === null ์กฐ๊ฑด์œผ๋กœ ๋ถ„๊ธฐํ•ด์ค€๋‹ค. ํ•˜๋‚˜๋ผ๋„..