2026, 새로운 도약을 시작합니다.

stackoverflow보고 코드 해석 해보고있는데 뭐가틀린걸까요? 채택완료

var getTimeout = function(){
    var e=setTimeout,
        b={};
    setTimeout=function(a,c){
            var d=e(a,c);
            b[d]=[Date.now(),c];
            return d
    };
    return function(a){
        return(a=b[a])?Math.max(a[1]-Date.now()+a[0],0):NaN
    }
 }();

원본 코드

나름의 머리로 해석한 코드

var getTimeout = function(){
    var setTimes = setTimeout,
    mapArray = {} // 빈 객체
    setTimeout(function(callback,delay){
    var id = setTimes(callback, delay);
    mapArray[id] = [Date.now(),delay];
    return id
   })
   
   return function(callback){
    return (callback=mapArray[callback]) ? Math.max(callback[1]-Date.now()+callback[0],0) : NaN
    }
   }
   
   function init(){
    getTimeout()
   }
   
   init()

   혹시 둘 차이를 좀 상세하게 알려 주실 분 계신가요?ㅠ

답변 1개

채택된 답변
+20 포인트

둘이라면 각각 어떤 코드를 말씀하시는 건지?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

원본 코드랑 제가 해석한 코드의 차이여
해결되서 종료합니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고