사용자 도구

사이트 도구


language:javascript:tip

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
language:javascript:tip [2020/06/18 12:45]
kieuns
language:javascript:tip [2022/12/09 17:12] (현재)
kieuns
줄 1: 줄 1:
 +~~Title:Javascript 코드 조각~~
 +
 +====== Javascript 코드 조각 ======
 +
 +====== foreach ======
 +
 +  * [[https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach|설명링크]]
 +
 +{{:사진자료실:js-foreach.png|}}
  
 ====== 미선언 상태 확인 ====== ====== 미선언 상태 확인 ======
줄 19: 줄 28:
 console.error('에러'); console.error('에러');
 </code> </code>
 +
 +====== 타이머 ======
 +
 +**setInterval()** 
 +
 +<code javascript>
 +var _timer = setInterval( 
 +  function(){ alert("Hello"); }, // 실행할 함수(코드)
 +  3000                           // 지연시간(ms)
 +);
 +</code>
 +
 +  * 두번째 파라미터에서 정한 시간만큼 기다렸다가
 +  * 첫번째 파라미터에 정한 함수를 실행한다.
 +
 +  * ''clearInterval()''로 멈추게 하기 전까지는 계속 호출된다.
 +    * 파라미터는 ''setInterval()''에서 리턴한 타이머 아이디를 넘겨줘야 한다.
 +
 +**setTimeout()** 
 +
 +<code javascript>
 +var _timer = setTimeout( 
 +  function(){ alert("Hello"); }, // 실행할 함수(코드)
 +  1000                           // 지연시간(ms)
 +);
 +</code>
 +
 +  * 두번째 파라미터에서 정한 시간만큼 기다렸다가
 +  * 첫번째 파라미터에 정한 함수를 실행한다.
 +
 +  * 한번만 실행된다.
 +  * 실행 되기 전에 멈추려면, ''clearTimeout()''로 타이머를 정지시켜야한다.
 +
 +
 +====== 시간재기 ======
 +
 +<code javascript>
 +// 방법1
 +console.time("time_chk_1"); console.timeLog("time_chk_1");
 +console.timeEnd("time_chk_1");
 +
 +// 방법2
 +var time1_start = Date.now();
 +var time1_end = Date.now() - time1_start; // ms 시간 값
 +
 +</code>
 +
 +====== 프라미스(Promise) ======
 +
 +<markdown>
 +## 시간재기
 +
 +```javascript
 +// 방법1
 +console.time("time_chk_1"); console.timeLog("time_chk_1");
 +console.timeEnd("time_chk_1");
 +
 +// 방법2
 +var time1_start = Date.now();
 +var time1_end = Date.now() - time1_start; // ms 시간 값
 +```
 +
 +## 간단 Promise
 +
 +```javascript
 +start_async_task_and_wait_until_done()
 +{
 +  let promise_task:Promise<void>[] = [];
 +  promise_task.push( this.async_task_sample() );
 +  Promise.all(promise_task).then(()=>{
 +    console.log('task: done');
 +  })
 +  .catch(() => {
 +    console.log('start_async_task_and_wait_until_done() : task failed');
 +  });
 +}
 +
 +/** 2초 기다렸다가 신호 보냄 */
 +async_task_sample()
 +{
 +  return new Promise<void>((onTaskDone) =>
 +  {
 +    setTimeout(() =>
 +    {
 +      CClog.log('FindSameBlocks: runTask: ', "done");
 +      onTaskDone();
 +    }, 2000);
 +  });
 +}
 +```
 +</markdown>
 +
 +
 +
 +
 +
 +
language/javascript/tip.1592451957.txt.gz · 마지막으로 수정됨: 2020/06/18 12:45 저자 kieuns