JS函数笔记

函数声明的五种方式

  1. 具名函数
function fn(输入1, 输入2, ...){
  return 输出值
} 

函数是变量的特例
console.log(x) -> 结果:字符串

  1. 匿名函数
var fn = function(输入1, 输入2, ...){
  return 输出值
}
  1. 声明+具名
var f = function fn(输入1, 输入2, ...){
  return 输出值
}

console.log(fn) -> 报错
fn的作用域只在函数的代码块内

  1. Function构造函数
var fn = new Function('输入1', '输入2', 'return 返回值')

5.ES6语法(箭头函数)

fn = (输入1, 输入2) => {
  return 输出
}

只有一个参数,可以省略(),函数体只有一句话,可以同时省略{}及return
箭头函数只能是匿名函数,可以用变量包含

函数的name属性

  1. 具名函数的name
function fn(){}
fn.name //fn
  1. 匿名函数的name
var f = function(){}
f.name //f
  1. 声明+具名函数
var f = function fn(){}
f.name //fn
  1. Function构造函数
var fn = new Function('x', 'y', 'return x+y')
fn.name //"anonymous"

函数调用

  1. fn(参数1, 参数2, ...)
  2. fn.call(undefined, 参数1, 参数2, ...)

this 与 arguments

fn.call(undefined, 参数1, 参数2, ...)
this: undefined
arguments: 参数1, 参数2, ...

call的第一个参数可以用this得到
call的后面的参数可以用arguments得到
非严格模式下,this为undefined时,浏览器会自动将undefined变为window

调用栈

stack ->先入后出

闭包

如果一个函数,使用了它范围外的变量,那么(这个函数+这个变量)就叫做闭包

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,569评论 0 13
  • 函数和对象 1、函数 1.1 函数概述 函数对于任何一门语言来说都是核心的概念。通过函数可以封装任意多条语句,而且...
    道无虚阅读 4,961评论 0 5
  • 第一部分 准入训练 第1章 进入忍者世界 js开发人员通常使用js库来实现通用和可重用的功能。这些库需要简单易用,...
    如201608阅读 1,410评论 1 2
  • 在js中,函数本身属于对象的一种,因此可以定义、赋值,作为对象的属性或者成为其他函数的参数。函数名只是函数这个对象...
    bjhu电net阅读 612评论 0 5
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 14,259评论 0 38

友情链接更多精彩内容