我發現下面的JavaScript代碼'namespace'標識符如何在Javascript中表示特殊的東西?
function calculateURI(uri) {
return (namespace.push.configuration.uriPrefix || '') + uri + (namespace.push.configuration.uriSuffix || '');
}
也是我在其他地方
ice.push.configuration.contextPath = 'something';
所以,我不知道發現,這些任務是如何關聯? 'namespace'標識符有特殊含義嗎?或者它只是一個像'冰'這樣的名字?
感謝
UPDATE
人們說 '命名空間' 是指沒有什麼特別的。
但我想設置'namespace.push.configuration.uriPrefix',因爲我在Firebug調試器中看到它。首先它是''並且需要它來包含一些路徑。最初我已經分配了
namespace.push.configuration.uriPrefix = ice.push.configuration.contextPath + '/';
但它是空白的。
然後我試圖分配
ice.push.configuration.uriPrefix = ice.push.configuration.contextPath + '/';
,並有 'namespace.push.configuration.uriPrefix' 充滿!
如果'命名空間'沒有特殊含義,怎麼可能?
更新2
可能是他們做了一些超載?它們的腳本的整體結構如下所示
if (!window.ice) {
window.ice = new Object;
}
if (!window.ice.icepush) {
(function(namespace) {
window.ice.icepush = true;
//....
// a lot of functions
// ....
})(window.ice);
}
無處不在函數的'名稱空間'中被使用,並且永遠不會拼寫爲'冰'。
這個patterd可以做一些重載'namespace'變量嗎?
你甚至嘗試使用Google搜索嗎?第一個結果給了我答案。 http://www.google.com/search?q=javascript+namespace – Polynomial
這只是一個名字。除非你使用'namespace'關鍵字,它是Firefox中非標準E4X擴展的一部分 – Raynos
當然我使用google搜索那篇文章,但沒有發現關於'namespace'名稱的特殊內容。 – Dims