728x90
๋ฐ˜์‘ํ˜•

2025/06/18 2

performance.getEntriesByType("navigation")

performance.getEntriesByType("navigation")๋Š” ํŽ˜์ด์ง€์˜ ๋กœ๋”ฉ ๋ฐฉ์‹(์˜ˆ: ์ƒˆ๋กœ๊ณ ์นจ, ํžˆ์Šคํ† ๋ฆฌ ํƒ์ƒ‰, ์ตœ์ดˆ ๋กœ๋“œ ๋“ฑ) ์„ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” Web Performance API์˜ ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค.์ด๋ฅผ ํ†ตํ•ด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ๋ถˆ๋Ÿฌ์™”๋Š”์ง€๋ฅผ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ“Œ ๋ฌธ๋ฒ•javascriptconst entries = performance.getEntriesByType("navigation");๋ฐ˜ํ™˜๊ฐ’: PerformanceNavigationTiming ๊ฐ์ฒด ๋ฐฐ์—ด (๋ณดํ†ต ํ•˜๋‚˜์˜ ํ•ญ๋ชฉ๋งŒ ์กด์žฌ)์ด ๊ฐ์ฒด์—๋Š” type, startTime, duration ๋“ฑ ๋‹ค์–‘ํ•œ ๋กœ๋”ฉ ๊ด€๋ จ ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.๐Ÿ“˜ ์ฃผ์š” ์†์„ฑ (PerformanceNavigationTiming)javasc..

IT์ง€์‹ 2025.06.18

[js] requestAnimationFrame ํ•จ์ˆ˜

requestAnimationFrame()์€ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋‹ค์Œ ํ™”๋ฉด์„ ๊ทธ๋ฆฌ๊ธฐ ์ง์ „์— ์‹คํ–‰ํ•  ์ฝœ๋ฐฑ์„ ์˜ˆ์•ฝํ•˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.์ฃผ๋กœ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ฒ˜๋ฆฌ๋‚˜ ๋ Œ๋”๋ง ํƒ€์ด๋ฐ์„ ์ •ํ™•ํ•˜๊ฒŒ ๋งž์ถ”๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. โœ… ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•js requestAnimationFrame(() => { // ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋‹ค์Œ repaint ์ „์— ์‹คํ–‰ํ•  ์ฝ”๋“œ // DOM์ด ๋ Œ๋”๋ง๋œ ์ดํ›„์— ์•ˆ์ „ํ•˜๊ฒŒ ์‹คํ–‰๋จ});๐Ÿง  ๊ฐœ๋… ์š”์•ฝํ•ญ๋ชฉ์„ค๋ช…์‹คํ–‰ ์‹œ์ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋‹ค์Œ ํ”„๋ ˆ์ž„์„ ๊ทธ๋ฆฌ๊ธฐ ์ง์ „ํ˜ธ์ถœ ๋นˆ๋„์ผ๋ฐ˜์ ์œผ๋กœ ์ดˆ๋‹น 60ํšŒ (60fps)์ฃผ ๋ชฉ์ ๋ถ€๋“œ๋Ÿฌ์šด ์• ๋‹ˆ๋ฉ”์ด์…˜ / ๋ Œ๋”๋ง ์ดํ›„ DOM ์กฐ์ž‘์ด์ setTimeout๋ณด๋‹ค ๋ถ€๋“œ๋Ÿฝ๊ณ  ํšจ์œจ์ ์ด๋ฉฐ, ๋ Œ๋”๋ง ํƒ€์ด๋ฐ ๋ณด์žฅ ๐ŸŽฏ ์–ธ์ œ ์‚ฌ์šฉํ•˜๋‚˜?DOM ๋ณ€๊ฒฝ ์งํ›„ ํ›„์† ์ฒ˜๋ฆฌ์˜ˆ: innerHTML ๋˜๋Š” .append() ํ›„ ํŠน์ • ์š”์†Œ..

Front/JS & jQuery 2025.06.18
728x90
๋ฐ˜์‘ํ˜•