Javascript函数语法需要解释

Javascript function syntax needs explanation

本文关键字:解释 语法 函数 Javascript      更新时间:2023-09-26
return this.foo("abc",function(){
                           //do something
                      });

有人可以告诉我上面的行有什么作用吗?谢谢

  1. 它获取对 this 的引用,这可能是 DOM 窗口、DOM 元素或任何其他 JavaScript 对象,具体取决于上述代码的运行方式和位置。
  2. 它(跳过(准备一个新的匿名Function//does something .
  3. 它试图在对象this上调用一个方法foo,传入两个参数"abc"和匿名Function

通常,当您看到传递匿名函数的代码时(例如 function(){ ... } (,它实际上保留了该函数,以便不是立即执行它,而是在稍后的某个时间点执行它,例如响应单击事件或计时器。

它调用this.foo引用的函数并传递两个参数:字符串"abc"和匿名函数function(){ //do something}。然后return结果。

它相当于:

var a = "abc";
var b = function(){ 
    //do something
};
return this.foo(a, b);

函数是 JS 中的一类对象,因此您可以像传递任何其他值一样传递它们。


我建议看一下MDC JavaScript指南

看起来像this.foo((是一个返回某些东西的函数。 所以返回值是this.foo((返回的内容。

调用一个实例方法,该方法获取字符串和函数作为参数。

它将返回(是的,就像英语一样(函数this.foo(...)的返回结果(在最简单的形式中,i该函数this.foo(...)返回"某物",然后代码将返回"某物"(。函数 this.foo("abc", function(){...}); 本身是一个接收 2 个参数的函数:字符串 "abc" 和一个函数((。函数 this.foo 将做一些事情并返回"某物"以由主函数返回。[x]