JavaScript自执行函数

  • 1.自执行函数是什么
  • 2.自执行函数存在的意义
    • 2.1封装
  • 3.自执行函数两种常见的的写法
    • 3.1自执行函数的第一种写法
    • 3.2自执行函数的第二种写法
  • 4.自执行函数的传参
    • 4.1 第一种写法
    • 4.1 第二种写法
  • 5.自执行函数的总结
    • 1.自执行函数与普通函数无本质区别,简化了普通函数的步骤
    • 2.自执行函数与普通函数一样,同样具有形参和实参
    • 3.自执行函数实际是函数表达式,属于高阶函数
    • 4.自执行函数一般使用匿名函数(因为外面具名外面也无法获取----下面上代码)
  • 看这里

1.自执行函数是什么

自执行函数也叫立执行函数
是将函数的声明和调用合并在一起

2.自执行函数存在的意义

自执行函数是为了封装
不需要将普通的函数特意换成自执行函数的写法

2.1封装

目的: 通过命名空间(本质是一个普通的对象)或自执行函数实现程序的基本封装,提升程序的可维护度
//–命名空间的解释看另一篇文章,后续会出–//
大型项目中设计的代码量是惊人的,然而代码并非一成不变,随时会面临功能升级或者bug修复,因此需要有良好的代码组织管理的方式,才能保证将来维护代码时更加的高效

3.自执行函数两种常见的的写法

3.1自执行函数的第一种写法

;(function () {//代码块
})()//解析第一步 先写两个()() ()第一个()可以这样想1 + 1 * 3  我想先执行 1 + 1(1 + 1) * 3 这样就实现了先执行()内的把函数放进()去(function () {})第二步(functon () {}) ()第一个()可以看作一个函数 后面这个()则是函数的执行

3.2自执行函数的第二种写法

;(function () {// 代码块
}())//解释第一步 将函数放在()内(function () {})第二部 在函数的{} 后面加一个() 表示调用(function () {} ())

4.自执行函数的传参

4.1 第一种写法

// 形参在function旁边的()  与普通函数一样
;(function (x,y) {return x + y//实参在最后的()中
})(1,2)

4.1 第二种写法

// 形参在function旁边的()  与普通函数一样
;(function (x,y) {return x + y//实参在最后的()中   注意两种写法的括号位置是不一样的
}(1,2))

5.自执行函数的总结

1.自执行函数与普通函数无本质区别,简化了普通函数的步骤

2.自执行函数与普通函数一样,同样具有形参和实参

3.自执行函数实际是函数表达式,属于高阶函数

4.自执行函数一般使用匿名函数(因为外面具名外面也无法获取----下面上代码)

    // 这样写已经自执行了;(function fn() {console.log('我是fn函数')})()//在外面去调用自执行函数fn()fn()  //控制台打印 fn is not defined  未定义就是没有找到// 可以在函数内部调用具名的自执行函数;(function fn() {console.log('我是fn函数')fn()  // 这样的后果是一直执行  })()

看这里

上面提到的命名空间会出文章解释一下,喜欢的朋友可以收藏一下网址
也可以看看鄙人的其他文章有没有对大家有帮助的

JavaScript自执行函数,自执行函数是什么,存在的意义?相关推荐

  1. JavaScript 函数声明,函数表达式,匿名函数,立即执行函数之区别

    函数声明:function fnName () {-};使用function关键字声明一个函数,再指定一个函数名,叫函数声明. 函数表达式 var fnName = function () {-};使 ...

  2. JavaScript 中一句话的思索:this是函数在执行时所处的作用域

    最近看<JavaScript高级程序设计>一书,在讲到函数中对象一节时,提到了this对象,中有一句"this是函数在执行时所处的作用域",译者注:原书的提法并不准确, ...

  3. JavaScript中语句与函数的执行辨析

    文章出自个人博客https://knightyun.github.io/2018/05/23/js-anonymous-function,转载请申明. Javascript代码中,语句和函数以及匿名函 ...

  4. js执行oracle函数吗,执行javascript函数

    JS--函数 JavaScript 函数语法 函数就是包裹在花括号中的代码块,前面使用了关键词 function: function 函数名([参数]){ 执行的代码: } 当调用该函数时,会执行函数 ...

  5. javascript里将函数名字符串转为函数并执行

    javascript中,如何将函数名字符串转变为函数并执行? "用 eval ",西蒙说. 咋弄呢?类似地: var mess = "hello world!" ...

  6. 在网页中JS函数自动执行常用三种方法

    <SCRIPT   LANGUAGE="JavaScript">   functionn MyAutoRun() {   //以下是您的函数的代码,请自行修改先! al ...

  7. setwindowshookex回调函数不执行_ECMAScript 6 入门教程—Generator 函数的异步应用

    作者 | 阮一峰异步编程对 JavaScript 语言太重要.JavaScript 语言的执行环境是"单线程"的,如果没有异步编程,根本没法用,非卡死不可.本章主要介绍 Gener ...

  8. 函数声明、函数表达式、匿名函数、立即执行函数

    函数声明:function fnName () {-};使用function关键字声明一个函数,再指定一个函数名,叫函数声明. 函数表达式 var fnName = function () {-};使 ...

  9. js for循环_JS 函数的执行时机(深入理解6个6)

    定时器:setTimeout() setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式 提示: 1000 毫秒= 1 秒. 提示: 如果你只想重复执行可以使用 setInterval ...

最新文章

  1. VC使用CRT调试功能来检测内存泄漏
  2. C语言-文件操作总结
  3. HTML5 跨文档消息传输
  4. Spark Streaming事务
  5. Android --- 解决 registerLocationListener 过时问题(百度地图)API
  6. SCUT - 337 - 岩殿居蟹 - 线段树 - 树状数组
  7. 【计组实验】P1 logisim完成单周期处理器开发 MIPS指令集
  8. vi/vim 编辑器详解
  9. java设计连连看心得_基于Java的连连看游戏的设计与实现
  10. mingw c++ 命令行_Mingw-w64在win10下的安装使用
  11. 可以多次使用同一个hbitmap吗_求婚钻戒和结婚钻戒可以是同一个吗?意义戴法各不同,别胡乱混淆...
  12. VC6.0编译错误解决方法集锦
  13. mysql2018漏洞_MySQL多个远程安全漏洞CVE-2018-2562/91 大批版本受影响
  14. 红帽linux6.8镜像下载,redhat8镜像下载
  15. Madis模拟黏滞阻尼器
  16. 科技论文写作课程笔记
  17. 程序员在Medium上写作赚美金的基本流程
  18. 咖啡馆html报告,咖啡屋调查报告.ppt
  19. 58同城2021校招笔试真题-前端
  20. linux下退出mysql

热门文章

  1. 涡轮增压扫地机器人_智能扫地机器人哪个牌子好
  2. 一款超好用的 Redis 可视化管理工具
  3. 查看已安装的git版本
  4. 为了知道胡歌粉丝的男女比率,爬了三百万微博数据
  5. 【汇智学堂】2进制与10进制之间相互转化
  6. 转:上午还在写Bug,下午突然“被离职”,咋整?
  7. 设置maven项目默认添加地址
  8. leetcode 求子集
  9. linux xstart 配置文件,Xmanager之Xstart配置.docx
  10. 绘图操作时报错“无法从带有索引像素格式的图像创建 Graphics 对象”