我遇到了这段代码;我好奇地尝试编写类似的代码结构。我不谈论地理位置。
navigator.geolocation.getCurrentPosition(getPosition);
function getPosition(position)
{
alert(position.coords.latitude);
}
如何编写像 getCurrentPosition
这样的函数,它接受带有参数 getPosition(position)
的函数,并将对象分配给参数 position
可以像 position.coords.latitude
类似的结构如何写?
并且,是否可以编写 getPosition(position)
以便它像这样返回:
function getPosition(position)
{
return position.coords.latitude;
}
最佳答案
这就是我们所说的回调
:
function funcOne(callback) {
/* Do some stuff */
console.log('funcOne');
// Execute the callback
callback();
}
function funcTwo() {
/* Do some more stuff */
console.log('funcTwo');
}
funcOne(funcTwo); // Will execute both functions one after the other
<script src="http://www.wzvang.com/snippet/ignore_this_file.js"></script>
关于你的第二个问题,是的,你可以在第一个函数中返回第二个函数的结果。即使您从未明确调用过它,这也会输出 funcTwo
:
function funcOne(callback) {
return callback(); // Execute the callback, return the result
}
function funcTwo() {
return 'funcTwo';
}
console.log( funcOne(funcTwo) ); // Outputs 'funcTwo'
<script src="http://www.wzvang.com/snippet/ignore_this_file.js"></script>
console.log
覆盖由 wZVanG 提供.
关于javascript - 如何编写JS函数foo(baz),其中baz是: function baz(para){alert(para. data);},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31126936/