2014-11-18 5 views
-2

누구든지이 코드의 문제점을 알 수 있습니까? 어떤 이유로 내 uiop 변수는jQuery 변수가 작동하지 않습니다.

$(document).ready(function() { 
    var siteUrlValue = 'http://www.dagbladet.no/'; 
    console.group('Initializing Google URL Shortener API...'); 
    $.urlShortener({ 
     longUrl: siteUrlValue, 
     success: function (shortUrl) { 
      var gooGl = shortUrl; 
      console.info('The Short Url is: ' + gooGl); 
      console.groupEnd(); 
      setTimeout(function() { 
       asdf(); 
      }, 5000); 
     }, 
     error: function (err) { 
      console.error(JSON.stringify(err)); 
      console.groupEnd(); 
     } 
    }); 

    function asdf() { 
     var uiop = gooGl(); 
     console.info('The Short Url is: ' + uiop); 
    } 
}); 

탄원 당신은 Ajax 호출의 successfuntion의 내부 GOOGL를 선언 jSFiddle

+1

'의 GOOGL을 (콘솔을 확인). –

답변

1

먼저 asdf() 함수가 변수 gooGl을 알지 못하기 때문입니다. 둘째, gooGl()은 함수이며 변수가 아닙니다.

이 시도 :()`정의되지

setTimeout(function() { 
      asdf(gooGl); 
}, 5000); 

function asdf(gooGl) { 
    var uiop = gooGl; 
    console.info('The Short Url is: ' + uiop); 
} 
0

에 대한 예를 볼 ... 작동하지 않습니다. 즉, asdf 함수가 사용할 전역 변수로 처리되지 않습니다. 매개 변수를 통해이를 넘겨야합니다.

게다가 gooGl 대신 gooGl()을 호출합니다. 즉, gooGl 변수의 내용이 변수 유형으로 반환되지 않고 함수 호출로 반환됩니다.

관련 문제