鍍金池/ 問答/HTML/ node.js 變量聲明問題

node.js 變量聲明問題

同樣的一份代碼

TopClient = require('../../lib/taobao-sdk/api/topClient').TopClient;

如果用node命令直接運行沒問題不會報錯,但是在項目中運行會出現(xiàn)下面錯誤
圖片描述

如果寫成

var TopClient = require('../../lib/taobao-sdk/api/topClient').TopClient;

則沒有問題,另外我項目中引用babel,該問題是否由babel造成,望高手解答,謝謝!


補充一下,不是我主觀想采用這種寫法,是taobao的api sdk文件采用的這樣的寫法。十分尷尬。

回答
編輯回答
青檸

我猜測因為你用了babel,而babel用了嚴(yán)格模式。錯誤說的是=號左邊的TopClient未定義,但講道理如果不是嚴(yán)格模式=號左邊的TopClient在解析時回向上查找TopClient,如果到全局作用域還沒有會創(chuàng)建一個。不過問題來了,為什么要用代碼1不聲明TopClient用代碼2?

2018年8月7日 08:03