JS中的函数
函数是一段在一起的、可以做某一件事的程序。也叫做子程序、(OOP中)方法创建函数函数是实现某一个功能的方法
function [函数名]([形参]){} //=>[函数体] //实现功能的具体JS代码执行函数
函数名();//=>把创建的函数执行,而且这个函数可以执行很多次
在真实项目中,我们一般都会把实现一个具体功能的代码封装在函数中:JS中函数的核心原理1、如果当前这个功能需要在页面中执行多次,不封装成为函数,每一次想实现这个功能,都需要重新把代码写一遍,浪费时间,而封装在一个函数中,以后想实现多次这个功能,我们就没有必要在重新写代码了,只需要把函数重新的执行即可,提高了开发效率
2、封装在一个函数中,页面中就基本上很难出现重复一样的代码了,减少了页面中代码的冗余度,提高了代码的重复利用率低耦合高内聚
我们把以上的特点称为 函数封装(OOP面向对象编程思想,需要我们掌握的就是类的继承、封装、多态)
函数作为js中引用数据类型的一种,也是按照引用地址来操作的
function sum(){ var total=1+1; total*=20; console.log(total.toFixed(2)); } sum();
创建函数
首先会在当前作用域中声明一个函数名(声明的函数名和使用var声明的变量名是一样的操作: var sum;function sum;这两个名字算重复了)
浏览器首先会开辟一个新的内存空间(分配一个16进制地址),把函数体中的写好的代码当做普通的字符串存储在这个内存空间中(创建一个函数如果不执行,函数没有意义)
把内存空间的地址赋值给之前声明的那个函数
函数执行
目的:把之前存储的实现具体功能的JS代码执行
函数执行,浏览器首先会为其开辟一个新的私有作用域(只能执行函数中之前编写的JS代码)
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/95865.html
摘要:作用域链用于表明上下文的执行顺序。当前上下文执行完毕则出栈,执行下一个上下文。 从一个简单的例子出发 先从一个简单的例子出发(先不涉及异步),看看自己是否大致了解浏览器的执行机制: console.log(a); var a=1; function foo(a){ console.log(a); var a=2; console.log(a); } foo(a)...
摘要:事件循环当主线程中的任务执行完毕后,会从任务队列中获取任务一个个的放在栈中执行去执行,这个过程是循环不断的,所以整个的这种运行机制又称为事件循环。 写在前面 说起javascript(以下简称js)这门语言,相信大家已经非常熟悉了,不管是前端开发还是后端开发几乎无时无刻都要跟它打交道。虽说开发者每天几乎都要操作js,但是你真的确定你掌握了js的运行机制吗!下面我们就来聊聊这话题。 Ja...
摘要:测试调用断言的执行后返回断言被调用断言被调用了一次断言传入的参数为所创建的函数还可以设置返回值,定义内部实现或返回对象。 在本篇教程中,我们会介绍 Jest 中的三个与 Mock 函数相关的API,分别是jest.fn()、jest.spyOn()、jest.mock()。使用它们创建Mock函数能够帮助我们更好的测试项目中一些逻辑较复杂的代码,例如测试函数的嵌套调用,回调函数的调用等...
摘要:执行上下文作用域链和内部机制一执行上下文执行上下文是代码的执行环境,它包括的值变量对象和函数。创建作用域链一旦可变对象创建完,引擎就开始初始化作用域链。 执行上下文、作用域链和JS内部机制(Execution context, Scope chain and JavaScript internals) 一、执行上下文 执行上下文(Execution context EC)是js代码的执...
阅读 3712·2021-10-12 10:11
阅读 1979·2019-08-30 15:53
阅读 1588·2019-08-30 13:15
阅读 2302·2019-08-30 11:25
阅读 1797·2019-08-29 11:24
阅读 1647·2019-08-26 13:53
阅读 3521·2019-08-26 13:22
阅读 1747·2019-08-26 10:24