我只是一個簡單的Javascript直到最近。在過去的幾周裏,我一直在努力學習更高級的方面。從經典的編程背景的到來,在Javascript原型都扔我一個循環超過幾次...用左大括號結束Javascript函數出錯?
雖然研究Snap.svg API(努力學習技術),我發現以下幾點:
(function (glob, factory) {
// AMD support
if (typeof define == "function" && define.amd) {
// Define as an anonymous module
define(["eve"], function (eve) {
return factory(glob, eve);
});
} else if (typeof exports != 'undefined') {
// Next for Node.js or CommonJS
var eve = require('eve');
module.exports = factory(glob, eve);
} else {
// Browser globals (glob is window)
// Snap adds itself to window
factory(glob, glob.eve);
}
}(window || this, function (window, eve) {
這是快的最新版本,從上線#423
起初,我以爲這是一個匿名的自我調用函數,這時我才發現開大括號。我已經通過下面的代碼向下看,不能考慮右大括號。此外,在8k +代碼行(使用notepad ++)中搜索花括號的出現指示了比關閉更多的大括號。另外,當我摺疊代碼片段中的第一行時,代碼的剩餘部分(將近8000行)摺疊。
}));
是否有可能在功能上缺少右括號得到被推到了文件的末尾:API中最後一行代碼結尾?這可能可以解釋文件末尾的雙右括號(第二個片段)?我會在github上報告錯誤,但我假設我正在讀這個錯誤。
如果有人能解釋發生了什麼,我會很感激。
這是一個函數,它有一個開放的花括號,當然也有一個關閉的代碼以及代碼中的其他地方。該函數只是作爲IIFE中的一個參數。 – adeneo
它的解釋[這裏](http://stackoverflow.com/q/34866510/1048572) – Bergi