我想通過以下方式創建Fabric.js對象,但由於某種原因,我卡住了。Uncaught TypeError:未定義不是函數,而使用變量創建對象
var object='fabric.Circle',
objects={};
objects['test1'] = new window[object]();
它給在3號線誤差Uncaught TypeError: undefined is not a function
您可以檢查相同的控制檯。
jsfiddle中的示例。
由於它工作正常,什麼是變種的'意義的obj = window' +1 –
您使用'obj'變量通過對象鏈進行迭代。 'var obj = window;'是初始化,'obj = obj [..]'是迭代。所以在進入'obj'之前將會是'window'。第一次迭代'obj'將會是'window.fabric'。第二次迭代'obj'將是'window.fabric.Circle'。 'window'是全局對象,所有全局變量都可以作爲全局對象的屬性來訪問。 – Tibos