阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      JS 表达式闭包【非标准】

      非标准,不要使用!

      闭包表达式语法是废弃的 SpiderMonkey 的特性,并且将被移除。为了长远使用,考虑使用箭头函数。

      功能

      表达式闭包是定义简单函数的一种便捷方式。

      语法

      function [name]([param1[, param2[, ..., paramN]]])
         expression
      
      

      参数

      name

      函数名。函数名可以省略不写,称为匿名函数。函数名仅在函数体有效。

      paramN

      形参名。一个函数最多可以有 255 个参数。

      expression

      构成函数体的表达式。

      描述

      这一附加特性只是编写简单函数的快捷方式,让语言更类似通常的 Lambda 标记。

      JavaScript 1.7 及之前版本:

      function(x) { return x * x; }
      
      

      JavaScript 1.8:

      function(x) x * x
      
      

      该语法支持省略花括号和’return’语句。使用这种编码的目的只是为了在句法上使得代码更加简化,但除此之外没有其他好处。

      示例

      一种绑定事件监听器的便捷方式:

      document.addEventListener("click", function() false, true);
      

      在 JavaScript 1.6 中的一些数组函数中使用该标记:

      elems.some(function(elem) elem.type == "text");
      
      目录
      目录