我已經開始使用Dojo進行一些操作了,並且對我遇到的可變範圍問題感到好奇。JavaScript中的變量作用域(Dojo)
我有以下代碼:
<div dojoType="dijit.form.Button">
<script type="dojo/method" event="onClick" args="evt">
console.dir(lastSelectedItem);
</script>
Rename
</div>
<div dojoType="dojo.data.ItemFileReadStore" url="/js/treeData.json" jsId="ordJson"></div>
<div dojoType="dijit.tree.ForestStoreModel" rootLabel="Order" store="ordJson" jsId="ordModel"></div>
<div dojoType="dijit.Tree" id="ordTree" model="ordModel">
<script type="dojo/method" event="onClick" args="item">
lastSelectedItem = item;
</script>
</div>
如果我離開它,它工作正常。但是,如果將lastSelectedItem替換爲「var lastSelectedItem」,lastSelectedItem將在調用console.dir(lastSelectedItem)的作用域中不可見。 「var」在這種情況下會產生什麼效果?我認爲它無論如何都是隱含的?
謝謝。