javascript - 如何编写JS函数foo(baz),其中baz是: function baz(para){alert(para. data);}

标签 javascript

我遇到了这段代码;我好奇地尝试编写类似的代码结构。我谈论地理位置

    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/

相关文章:

javascript - 使用不带(jquery)的纯 JAVASCRIPT 滚动到网站的顶部链接

javascript - 如何在已经运行的Electron应用程序中通过 “open with”打开文件?

javascript - 我可以使用网络浏览器和javascript来实现客户端socket程序吗

javascript - JS 中解析 JSON 就像 JAVA 中的 GSON 一样

javascript - 如何编写用于在 Ember.JS 中注册和注入(inject)的初始化程序?

javascript - 用 forEach 重写 for 循环

javascript - Angular 2 选择选项(下拉)-如何获取更改值以便在函数中使用它?

javascript - 从 Javascript 读取 Django session key cookie

javascript - 如何更新 pouchDB 文档中的单个字段

javascript - CSS 不会出现在 HTML 和 Node 中