๊ด€๋ฆฌ ๋ฉ”๋‰ด

Hey Tech

[JavaScript] ๋ฐฐ์—ด ๋‚ด ํŠน์ • ์›์†Œ ์ธ๋ฑ์Šค ์ฐพ๊ธฐ(indexOf, lastIndexOf ํ•จ์ˆ˜) ๋ณธ๋ฌธ

SW ๊ฐœ๋ฐœ/Vanilla JS

[JavaScript] ๋ฐฐ์—ด ๋‚ด ํŠน์ • ์›์†Œ ์ธ๋ฑ์Šค ์ฐพ๊ธฐ(indexOf, lastIndexOf ํ•จ์ˆ˜)

Tony Park (ํ† ๋‹ˆ) 2021. 12. 1. 16:31
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ’ก ๋ชฉํ‘œ

JavaScript์—์„œ ๋ฐฐ์—ด ๋‚ด ํŠน์ • ์›์†Œ์˜ ์ธ๋ฑ์Šค ์ถ”์ถœ ๋ฐฉ๋ฒ•์„ ํ•™์Šตํ•œ๋‹ค.

1.  indexOf ํ•จ์ˆ˜: ๋ฐฐ์—ด ์•ž์—์„œ๋ถ€ํ„ฐ ์›์†Œ ์œ„์น˜ ํƒ์ƒ‰

let arr1 = ['tiger', 'lion', 'cat', 'dog', 'cat'];
console.log(arr1.indexOf('cat')); // ์ฐพ์€ ๊ฒฝ์šฐ ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜: 2
console.log(arr1.indexOf('rabbit')); // ๋ชป ์ฐพ์€ ๊ฒฝ์šฐ -1

indexOf ํ•จ์ˆ˜๋Š” ๋ฐฐ์—ด ๋งจ ์•ž์—์„œ๋ถ€ํ„ฐ(์ธ๋ฑ์Šค [0]) ํŠน์ • ์›์†Œ์˜ ์œ„์น˜๋ฅผ ํƒ์ƒ‰ํ•˜๊ณ ,

๋ฐฐ์—ด ๋‚ด ํ•ด๋‹น ์›์†Œ๊ฐ€ ์žˆ๋‹ค๋ฉด ๊ฐ€์žฅ ๋จผ์ € ๋ฐœ๊ฒฌ๋œ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ, ๋งŒ์•ฝ ๋ฐฐ์—ด ๋‚ด ํ•ด๋‹น ์›์†Œ๊ฐ€ ์—†๋‹ค๋ฉด -1์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์œ„ ์˜ˆ์ œ ์ฝ”๋“œ์—์„œ๋Š” 3๋ฒˆ์งธ ์œ„์น˜์— ์žˆ๋Š” ์›์†Œ์˜ ์ธ๋ฑ์Šค 2๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

2.  lastIndexOf ํ•จ์ˆ˜: ๋ฐฐ์—ด ๋’ค์—์„œ๋ถ€ํ„ฐ ์›์†Œ ์œ„์น˜ ํƒ์ƒ‰

let arr2 = ['tiger', 'lion', 'cat', 'dog', 'cat'];
console.log(arr2.lastIndexOf('cat')); // 4
console.log(arr2.lastIndexOf('rabbit')); // ๋ชป ์ฐพ์€ ๊ฒฝ์šฐ -1

lastIndexOf ํ•จ์ˆ˜๋Š” indexOf ํ•จ์ˆ˜์™€ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์ธ ๋ฐฐ์—ด ๋’ค์—์„œ๋ถ€ํ„ฐ ์›์†Œ์˜ ์œ„์น˜๋ฅผ ํƒ์ƒ‰ํ•˜๊ณ 

์›์†Œ๋ฅผ ์ฐพ์œผ๋ฉด ๊ฐ€์žฅ ๋จผ์ € ๋ฐœ๊ฒฌ๋œ ์›์†Œ์˜ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ, ๋งŒ์•ฝ ๋ฐฐ์—ด ๋‚ด ํ•ด๋‹น ์›์†Œ๊ฐ€ ์—†๋‹ค๋ฉด -1์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์œ„ ์˜ˆ์ œ ์ฝ”๋“œ์—์„œ๋Š” ๋งจ ๋’ค์— ์žˆ๋Š” 'cat'์ด ๋จผ์ € ๋ฐœ๊ฒฌ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ธ๋ฑ์Šค 4๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

 

์ด์ฒ˜๋Ÿผ, indexOf์™€ lastIndexOf ํ•จ์ˆ˜๋Š” ๋ฐฐ์—ด ๋‚ด ์›์†Œ๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉํ–ฅ์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์—,

๋ฐฐ์—ด ๋‚ด ์ค‘๋ณต๋œ ์›์†Œ๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ์–ด๋–ค ํ•จ์ˆ˜๋ฅผ ์“ฐ๋Š๋ƒ์— ๋”ฐ๋ผ ๊ฒฐ๊ด๊ฐ’์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.


ํฌ์ŠคํŒ… ๋‚ด์šฉ์— ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋ฉด ์•„๋ž˜์— ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š”!

๊ทธ๋Ÿผ ์˜ค๋Š˜๋„ ์ฆ๊ฒ๊ณ  ๋ฉ‹์ง„ ๋งŒ๋“œ์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๊ณ ๋ง™์Šต๋‹ˆ๋‹ค :-)

728x90
๋ฐ˜์‘ํ˜•