在這段代碼getCurrentPosition方法的返回geoposition對象作爲參數,如果你在一個方法傳遞函數。
它不是返回作爲參數的信息。它調用你給它的信息作爲參數的函數(我們在JavaScript中使用單詞「參數」,而不是參數)。函數是JavaScript中的第一類對象,您可以將引用傳遞給函數並在函數中使用它們。
所以,如果你有一個foo
功能,並希望它來調用回調,其結果是:
function foo(callback) {
// ...come up with the result, then:
callback(result);
}
這是特別有用的,這將是A)反覆調用回調函數(如Array#sort
一樣),或B)異步回調(與geolocation
一樣)。
例子:
function giveMeARandom(min, max, callback) {
callback(min + Math.floor(Math.random() * (max - min)));
}
giveMeARandom(1, 10, function(value) {
snippet.log("Value is " + value);
});
<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
要傳遞的功能 - 你可以把它作爲一個參數? –