程序员书籍笔记 程序员书籍笔记
  • HTML
  • CSS
  • JavaScript
  • 前端知识
  • Vue
  • MarkDown
  • git
  • Node.js
  • Linux
  • 51单片机
  • 四级
  • 第一学期课程
  • 操作系统
  • 计算机网络
  • 数据结构
  • 计算机组成原理
  • HTML5
  • Electron
  • 日记便签
  • 前端导航
GitHub (opens new window)
  • HTML
  • CSS
  • JavaScript
  • 前端知识
  • Vue
  • MarkDown
  • git
  • Node.js
  • Linux
  • 51单片机
  • 四级
  • 第一学期课程
  • 操作系统
  • 计算机网络
  • 数据结构
  • 计算机组成原理
  • HTML5
  • Electron
  • 日记便签
  • 前端导航
GitHub (opens new window)
  • HTML5

  • MDN

    • 语术
      • 语术表
      • API
      • Frist-class Function
        • 使用示例
  • Electron

  • blog

  • RK笔记

  • Js高级程序设计

  • 书籍笔记

  • 扩展
  • MDN
yuadh
2022-02-03
目录

语术

# 语术表

# API

一个API(Application Programming Interface,应用编程接口)是软件中的一系列和规则,这些特征和规则允许其它软件与之交互。API可被视为提供它的应用与其它软硬件之间的一个简单合约。

在Web开发中,API通常是开发者能用在应用中的一些列代码特征(如,方法、属性、事件和URL),这些特性被用于与用户的web浏览器中的组件、用户电脑上的其它软硬件或者第三方服务交互。

# Frist-class Function

头等函数

当一门编程语言的函数可以被当作变量一样用时,则称这门语言拥有头等函数。例如,在这门语言中,函数可以被当作参数传递给其他函数,可以作为另一个函数的返回值,还可以被赋值给一个变量。

# 使用示例

const foo = function(){
    console.log("test");
}
foo();
1
2
3
4

这里我们把一个匿名函数赋值给一个变量 (en-US) (opens new window),然后我们在这个变量后面加上一对圆括号 () 来调用这个函数。

function sayHello(){
    return "hello";
}
function greeting(helloMessage,name){
    console.log(helloMessage()+name);
}
greeting(sayHello,"js");
1
2
3
4
5
6
7

这里我们传递 sayHello() 函数作为 greeting() 函数的参数,这就印证了头等函数定义所说的——我们把函数当作值或者说是变量来对待。

**回调函数:**我们把一个函数作为参数传递给另外一个函数,那么我们就称这个函数为回调函数。sayHello() 函数就是一个回调函数。

function sayHello(){
    return function(){
        console.log("hello");
    }
}
1
2
3
4
5

在这个例子中,我们需要从另外一个函数中返回一个函数,之所以可以返回一个函数,是因为在 Javascript 中,函数可被作为值来对待。

**高阶函数(Higher-Order Function):**一个返回另外一个函数的函数被称为高阶函数。

const sayHello = function() {
   return function() {
      console.log("Hello!");
   }
}
const myFunc = sayHello();
myFunc(); // Hello!
1
2
3
4
5
6
7

你要用另外一个变量来调用它。如果你直接用 sayHello 来调用这个函数,它会返回这个函数自身,而不会调用它里面被返回的函数。

function sayHello() {
   return function() {
      console.log("Hello!");
   }
}
sayHello()();
1
2
3
4
5
6

我们使用双括号 ()() 来调用 sayHello() 返回的函数。

编辑 (opens new window)
上次更新: 2023/02/07, 14:51:48
绘制
基本使用

← 绘制 基本使用→

Theme by Vdoing | Copyright © 2021-2023 yuadh
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×