2016-08-13 75 views
0

我有下面的JavaScript微軟JScript運行時錯誤:「未定義」爲空或不是對象

(function() { 
    try { 


     var stdin = WScript.StdIn.ReadAll(); 
     var json = eval('(' + stdin + ')'); 
     var log = new Log(json.environment.actionLogFile); 
     log.commenced(); 
     var inputFilePath=json.action.inputs[0].value; 
     log.info("inputFilePath : "+inputFilePath); 
     ................ 
     log.completed(); 
    } catch (e) { 
     log.info("error"); 
    } 
})(); 

這給我的錯誤,Microsoft JScript runtime error: 'undefined' is null or not an objectcatch。任何建議爲什麼會發生這種情況

+0

不知道你在輸入什麼和'log'是什麼?不。我的意思是,猜測「log」是「未定義的」。 –

+0

''未定義'是空'?多麼奇怪的錯誤信息! – undefined

+0

@Vohuman:*「**或**不是對象」* –

回答

0

你還沒有顯示你提供的輸入,但我猜你會發現你的代碼在var log = ...行之前或之中拋出一個錯誤,很可能是eval調用(如果輸入可以不會被評估)或new Log(json.environment.actionLogFile);調用(如果它可以但不會導致具有environment屬性的對象,則new Log由於某種原因而拋出)。這意味着控制權轉移到catch,其嘗試使用log,這是undefined

相關問題