版權聲明:轉載請註明作者(獨孤尚良dugushangliang)出處:https://blog.csdn.net/dugushangliang/article/details/105574991
參官方文檔,下面這段代碼是用於被調用的,可以當做是一個模塊,把它保存爲js文件。exports表示輸出,即表明了這個文件可以被外部引用的代碼部分。提供給外部調用的變量或函數都依附於exports這個對象。
exports.doc = 'The Foo module is a demonstration of script modules.' +
'\n It contains a foo function that returns a greeting string. ' +
'\n It also contains a bar object representing the current date.' +
'\n' +
'\n foo(arg):' +
'\n @param {ee.String} arg The name to which the greeting should be addressed' +
'\n @return {ee.String} The complete greeting.' +
'\n' +
'\n bar:' +
'\n An ee.Date object containing the time at which the object was created.';
exports.foo = function(arg) {
return 'Hello, ' + arg + '! And a good day to you!';
};
exports.bar = ee.Date(Date.now());
如下圖所示,文件保存在print這個Git庫中,Modules是文件夾,FooModule.js是文件名。如果調用這個模塊,使用 require來實現。require表示模塊的引入。這個require的參數需要注意下。這裏有個冒號(‘:’),冒號前面的就是Git庫的名字,冒號後面的就是文件路徑。右側輸出的時間是格林尼治時間,我們使用的北京時間是東八區,所以我們的北京時間需要在格林尼治時間基礎上加上8個小時。
具體調用方法如下所示:
var Foo = require('users/dugushangliang/print:Modules/FooModule.js');
//如果需要調用的模塊文件直接在print這個Git庫下,則路徑表示爲下面這樣。
//var Foo = require('users/dugushangliang/print:FooModule.js');
print(Foo.doc);
print(Foo.foo('world'));
print('Time now:', Foo.bar);
需要注意的是:這個保存的文件如果不帶後綴,即不是FooModule.js,而是FooModule,需要使用下面的代碼來調用。
var Foo = require('users/dugushangliang/print:Modules/FooModule');
建議:最好帶上這個後綴名,一個是考慮到規範,一個是調用FooModule.js比FooModule好像更快,可能是因爲沒有後綴名的還需要判斷這個文件是什麼類型。
獨孤尚良dugushangliang——著