์ƒˆ์†Œ์‹

Languages/Java Script

[Js] ํ™œ์šฉ | youtube ์žฌ์ƒ์‹œ๊ฐ„ ๊ตฌํ•˜๊ธฐ | ์ƒํ™œ์ฝ”๋”ฉ javascript

  • -
๋ฐ˜์‘ํ˜•

๋ชจ๋“  ํฌ์ŠคํŒ…์€ ์ธํ”„๋Ÿฐ [์ƒํ™œ์ฝ”๋”ฉ] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์˜์˜ ๋‚ด์šฉ์„ ๋‹ด๊ณ  ์žˆ์œผ๋ฉฐ

์ถœ์ฒ˜๋Š” ์•„๋ž˜์˜ ์ฃผ์†Œ๋กœ "egoing Lee"๋‹˜์˜ ์ž๋ฃŒ์ž…๋‹ˆ๋‹ค. 

์ƒ์—…์ ์ธ ์˜๋„๊ฐ€ ์•„๋‹Œ ๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์ •๋ฆฌํ•ด๋†“๋Š” ๋ชฉ์ ์œผ๋กœ ํฌ์ŠคํŒ… ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

www.inflearn.com/course/javascript-%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EA%B0%95%EC%A2%8C#

 

์›น๋ธŒ๋ผ์šฐ์ € Javascript (์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ) - ์ธํ”„๋Ÿฐ

์ƒํ™œ์ฝ”๋”ฉ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์ขŒ ์ž…๋‹ˆ๋‹ค. ์›น๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ง์ ‘ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ๊ณต๋ถ€ํ•ด ๋ด…๋‹ˆ๋‹ค. ์ดˆ๊ธ‰ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด JavaScript ์˜จ๋ผ์ธ ๊ฐ•์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์ขŒ

www.inflearn.com


 

์œ ํŠœ๋ธŒ๋กœ ์—ฌ๋Ÿฌ ๊ฐ•์˜๋ฅผ ๋ณผ ๋•Œ๋ฅผ ๊ฐ€์ •ํ•ด๋ณด์ž. ์—ฌ๋Ÿฌ ๊ฐ•์˜์˜ ์ด ์‹œ๊ฐ„์ด ์–ผ๋งˆ์ธ์ง€ ๊ณ„์‚ฐํ•ด๋ณด๊ณ  ์‹ถ์„ ๋•Œ๊ฐ€ ์žˆ๊ธฐ ๋งˆ๋ จ์ด๋‹ค.

๊ทธ ๋•Œ, ์•„๋ž˜์™€ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค!


์‹ค์Šตํ•œ ์œ ํŠœ๋ธŒ ์‚ฌ์ดํŠธ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

https://www.youtube.com/playlist?list=PLuHgQVnccGMA0lO0qip6Phh6UL73TS0es

 

์‹ค์Šต ์—ฐ์Šต์„ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ์•„๋ž˜ ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

https://jsbin.com/menuziqute/1/edit?html,output

 

JS Bin

Sample of the bin:

jsbin.com

 

์‹ค์Šต ์˜ˆ์ œ ์ฝ”๋“œ

var times = document.querySelectorAll('.pl-video .pl-video-time .timestamp span');
/* ๊ฐ ๋™์˜์ƒ์˜ ์‹œ๊ฐ„์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•œ ๊ตฌ๋ฌธ์œผ๋กœ,
pl-video๋ผ๋Š” ํด๋ž˜์Šค์˜ ํ•˜์œ„์— pl-video-time ํด๋ž˜์Šค ํ•˜์œ„์˜ timestampํด๋ž˜์Šค ์•ˆ์—์„œ
span ํƒœ๊ทธ๋ผ๋Š” ๊ฐ’๋“ค์„ ๊ฐ€์ ธ์™€์„œ times๋ผ๋Š” ๋ณ€์ˆ˜ ์•ˆ์— ์œ ์‚ฌ ๋ฐฐ์—ด ํ˜•์‹์œผ๋กœ ๊ฐ€์ ธ์˜จ ๊ฐ’์„ ๋Œ€์ž…ํ•œ๋‹ค.*/ 

var duration = 0;	// ์‹œ๊ฐ„์˜ ํ•ฉ์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ๋ณ€์ˆ˜๋กœ, ์ดˆ๊ธฐํ™”ํ•œ ๊ฒƒ์ด๋‹ค.

for(var i=0; i<times.length; i++){	// ๊ตฌํ•˜๊ณ ์ž ํ•˜๋Š” ์˜์ƒ์˜ ์‹œ๊ฐ„์„ ๋ชจ๋‘ ํ•ฉ์น˜๊ธฐ ์œ„ํ•œ ๋ฐ˜๋ณต๋ฌธ์ด๋‹ค.

   var t = times[i];	// ๊ฐ ๋™์˜์ƒ์˜ ์‹œ๊ฐ„์„ ๋ณ€์ˆ˜ t์— ๋Œ€์ž…ํ•œ๋‹ค.
   t = t.innerText;	// ํƒœ๊ทธ๋ฅผ ๋บ€ ๋ฌธ์ž์—ด๋งŒ t๋ณ€์ˆ˜์— ๋‹ด์•„์ค€๋‹ค. ์ฆ‰, ๊ฐ ๋™์˜์ƒ ์‹œ๊ฐ„๋งŒ ๊ฐ€์ ธ์˜จ๋‹ค.
   t = t.split(':')	// ๋ถ„:์ดˆ ํ˜•์‹์œผ๋กœ ์ €์žฅ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— split์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ๊ฐ„๊ณผ ๋ถ„์„ ๊ตฌ๋ณ„ํ•œ๋‹ค.
   min = t[0];		// ๋ถ„๋งŒ min๋ณ€์ˆ˜์— ๋„ฃ๋Š”๋‹ค.
   sec = t[1];		// ์ดˆ๋งŒ sec๋ณ€์ˆ˜์— ๋„ฃ๋Š”๋‹ค.
   
   duration = duration + parseInt(sec) + parseInt(min)*60
   /* ๋™์˜์ƒ ์‹œ๊ฐ„์„ ํ•ฉ์ณ์ฃผ๋Š” ๊ตฌ๋ฌธ์œผ๋กœ,
      sec๊ณผ min์•ž์— parseInt๋ฅผ ๋ฐ”๊พธ๋Š” ์ด์œ ๋Š” ๋ฌธ์ž์—ด๋กœ ์ €์žฅ๋œ ๋ถ„๊ณผ ์‹œ๊ฐ„์„ ์ˆซ์ž๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.
      ๋˜ํ•œ, min์— 60์„ ๊ณฑํ•œ ์ด์œ ๋Š” ์ดˆ๋กœ ๋ฐ”๊ฟ”์„œ duration๋ณ€์ˆ˜์— ๋™์˜์ƒ์˜ ์‹œ๊ฐ„์„ ์ดˆ๋กœ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด์„œ์ด๋‹ค.*/
}

console.log(duration/60/60);	
/* ์ด ์‹œ๊ฐ„์„ ์ดˆ๋กœ ๊ตฌํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— 60์„ ๋‚˜๋ˆ ์„œ ์‹œ๊ฐ„์œผ๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค.
   60์„ ํ•œ ๋ฒˆ ๋‚˜๋ˆ„๋ฉด ๋ถ„์„ ๊ตฌํ•˜๊ฒŒ ๋œ๋‹ค.*/

[ ์‹คํ–‰ ๊ฒฐ๊ณผ ]

์œ„์™€ ๊ฐ™์ด ์ด 17์‹œ๊ฐ„์ธ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

 

๋ฐ˜์‘ํ˜•

'Languages > Java Script' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Template Literals | Destructuring | class  (0) 2021.02.15
ECMAScript6 | ES6 | let & const | Block-scope | Temprol Dead Zone  (0) 2021.02.15
[Js] jQuery Ajax | javascript  (0) 2021.02.10
[Js] JSON | Ajax์™€ JSON  (0) 2021.02.10
Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.