Javascript 函数语法

标签 javascript yui

在我学习 JavaScript 的微弱尝试中,我买了一本教你如何用 JavaScript 做事的书,但忘了说为什么。

来自 PHP,我熟悉典型的函数语法:

function name() {return;}

据我所知,它在 JS 中的工作方式相同。

然后我决定尝试在一个小项目中使用YUI 3 框架来继续学习并遇到这个... YUI Global Object

YUI().use('node', function(Y) {
   Y.Node.get('#demo');
});

据我所知,这是使用 YUI() 对象的“使用”函数,将“节点”传递给“使用”函数……但是那又是什么……为什么要在其中声明一个函数另一个函数调用?

有人可以解释一下这里使用的语法吗?

还有一个很好的引用资料,它解释了类似于 php.net 的 JavaScript 一般语法,这也是有益的。 感谢您的帮助。

最佳答案

它是一个匿名函数。它被认为是回调。

在 PHP 4 和 PHP 5 的早期版本中,您可能会看到类似这样的内容:

PHP

function callback($var){
   ...
}

array_filter( $array, "callback" );

在 PHP 5 的更高版本中,您可以将它们定义为内联匿名函数。

所以,在 JavaScript 中,旧版本看起来像这样:

JavaScript

function use_callback(Y){
    Y.Node.get('#demo');
}

YUI().use('node', use_callback);

但是通过定义一个内联匿名函数,你可以节省额外的困惑和定义的函数:

YUI().use('node', function(Y) {
   Y.Node.get('#demo');
});

这两个函数是等价的。

关于Javascript 函数语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2061958/

相关文章:

yui - Yahoo (YUI) 与 Google (Closure) 框架,用于在浏览器和 node.js 上进行测试

javascript - 在我的鼓应用程序中进行操作调度后,我的元素不会更新显示

javascript - 将 <img class ="image"> 替换为 <span class = "image"> 使用 YUI3 或 Javascript,无 jQuery

javascript - NodeJS/Javascript - 使用 Promise 处理图像收集然后保存聚合结果

javascript - 如何使用 JavaScript 或 jQuery 更改数组内对象的值?

javascript - YUI 缩小内容面板?

javascript - YUI 编辑器 : How to paste as plain text?

javascript - 从数组嵌套 JSON

javascript - Angular ui-router在滚动时改变状态