函数的基本概念

    // 什么是函数:// 实现固定功能的代码块// 函数是工具,是实现功能的工具// 函数是通过其中的代码,来实现所谓的功能// 函数的特点://   封装: 将需要的代码,写入到函数中//   重复: 一个函数可以反复调用//   调用: 可以在任意需要位置上调用执行代码// 函数的定义/函数的封装// 函数的定义/封装 有固定的语法形式/*function 函数名称(函数的参数){函数的代码;return 内容;}function    定义函数/封装 的关键词,作用类似于 关键词var 告诉计算机程序,我正在封装的是一个函数函数名称     也就是这个函数的名称,之后调用函数时,是通过函数名称来调用函数,并且执行函数函数的参数   执行函数时,输入给函数的数据信息函数的代码   定义在{}中的程序,是函数执行时,调用的程序内容return      函数的返回值;*/// 函数的封装/函数的定义// 函数封装时,程序并没有被执行,只有在函数调用时,程序才会被执行function fun(){console.log(123);}// 函数的调用和执行fun();// 1,定义函数阶段,只是将程序定义在函数内,程序并没有执行//   是有在调用函数时,封装在函数内部的程序,才会被执行// 2,函数命名的规范 --- 与变量的命名规范相同//     规则 : 只能使用 数字,字母,下划线_,美元$//            不能以数字开头//            区分大小写//     规范 : 见名知意//            驼峰命名法// 3,所谓的封装,就是将程序,放在 函数的 { } 中,就是函数程序的封装// 4,函数的调用//   调用执行执行,必须使用函数的固定语法, 函数名称() 的方式来调用函数

// 在定义函数之前,先调用函数

    // 声明方式定义的函数,可以正常执行fun1();// 赋值方式 / 匿名函数,不能正常执行,会报错fun2();// JavaScript中,函数的定义方式/语法// 1,声明方式// 通过关键词,function 来定义和声明函数// 封装函数,但是函数不会执行// 也就是我现在组装好了一个微波炉,但是就放在那儿没有用function fun1(){console.log('我是声明方式定义的函数1');}// 调用函数,执行执行// 相当于我在这里使用微波炉// fun1();// 2,匿名函数 / 赋值方式// 定义函数时,不定义函数,名称,将函数赋值给一个变量// 然后通过调用变量名称()的形式来调用函数var fun2 = function(){console.log('我是匿名函数,也叫赋值方式,定义的函数');};// 调用时,是通过变量名称()来调用函数// fun2();// 定义函数的语法的区别// 声明方式:  可以在程序的任意位置上,调用函数,甚至可以在定义函数之前,就调用函数,执行函数// 赋值方式/匿名函数: 只能在定义函数之后,再调用函数

函数在封装时和调用时,计算机的基本执行步骤和执行原理

        1,基本数据类型和复杂数据类型,在定义和存储数据时的区别基本数据类型 : 布尔 数值 字符串 undefined null复杂数据类型 : 对象 数组 函数在计算机存储数据的过程中,将变量,存储在内存当中在内存中计算机程序执行是,将内存中的存储空间虚拟的分成了两个部分栈 和 堆  两个部分 来存储数据基本数据类型,都存储在 栈 当中 复杂数据类型,都存储在 堆 当中var a = 100; 这是在定义一个基本数据类型a = 100 存储在 栈 中变量名称 a 中 存储的就是 数值100调用变量a,就是调用其中存储的数据100var b = function (){}这是在定义一个复杂数据类型function(){}  函数存储在 堆 当中,并且计算机操作系统,给这个函数定义了一个 内存地址 例如 0f0b 这个变量 存储在 栈 当中 b 这个变量 存储的是 函数的内存地址 0f0调用变量b , 实际上是调用 0f0 这个地址 , 找到地址对应的函数 , 调用函数中的程序// 参数// 是函数执行时,定义的数据,或者是执行的对象,内容等// 定义一个累加求和的函数// 在函数的()中,来定义函数的参数// 参数定义,也就是定义函数使用的两个变量function add(min,max){var res = 0;for(var i = min ; i <= max ; i++){res += i;}console.log(res);            }add(1,100);add(1,10);add(90,100);

// 定义累加求和函数

    // 定义在函数内部的变量,参数等,在函数外部不能直接使用// 相当于冰箱里的熊猫,不能直接拿出来用,必须要打开冰箱门,才能获取到熊猫// return关键词的作用//   1,定义函数的返回值//     如果没有 return , 函数的返回值是 undefined//   2,return会终止之后,函数程序的执行function add(min , max){var res = 0;for(var i = min ; i <= max ; i++){res += i;}return res;}var a = add(1,100);console.log(a);

// 函数的基本封装步骤

    // 1,定义程序来实现功能的需求// 2,定义函数,将程序放在{}中,封装程序// 3,定义参数// 4,定义返回值// 5,考虑容错机制//     函数的执行,对于参数是要有要求的,如果参数出现问题//     要么终止程序的执行,要么对参数进行处理//     方式1: 使用return来终止函数的执行//         在switch判断和循环语句中,可以使用break来终止程序//         在函数中药终止函数的执行,不能使用break//         需要使用return关键词;//     方式2: 对数据进行调整// 6,考虑函数参数的默认值// 7,给函数定义函数说明//     代码规范中规定,所有的自定义函数,都要写函数说明//     每个公司对于函数说明的语法规范都不相同,我们现在先了解一个基本格式// 函数说明   param  参数的意思  是对参数的说明//           一般写  参数的名称  数据类型  作用//           return  返回值的意思 是对返回值的说明//           return  返回值的名称 数据类型 作用// @param min int 累加求和的起始数值,默认值是1,整数类型// @param max int 累加求和的终止数值,整数类型// @return res int 累加求和的结果,整数类型// 函数功能作用的描述:// 累加求和函数,默认累加求和的起始值是1,终止值需要输入,累加求和的结果是res// 对于输入数据的大小顺序有容错处理// 对于输入数据的类型判断,有待后期增加// 封装累加求和函数// 默认是从1开始执行累加// 给形参定义默认值是1,并且写在形参的最后// 现在要交换 a 和 b 两个变量中存储的数据// 不能直接相互赋值,必须要建立一个中间变量// 定义中间变量var c = 0;// 中间变量存储ac = a;// a中存储ba = b;// b存储中间变量,也就是a的原始值// 完成数据交换b = c;console.log(a,b);

// 函数参数的默认值

    // 因为实参赋值是有顺序的// 带有默认值的形参,一般都写在形参的最后// 正常定义函数和参数function fun(name,age){console.log(`姓名是${name},年龄是${age}`);}// 函数执行是输入实参fun('李四' , 180);// 给函数的参数定义默认值// 语法与给变量赋值是相同的语法 形参 = 数值// 给形参定义默认值function fun2(name,age=18){console.log(`姓名是${name},年龄是${age}`);}// 调用执行函数时,如果没有对应形参赋值// 王五 只是给 name 形参赋值// age 形参在调用函数时 没有赋值实参 // 就执行 定义的默认值// 如果有赋值,执行的是重复赋值,定义的实参会覆盖定义的默认值// 如果形参,没有默认值,也没有赋值实参,也就是形参没有赋值// 执行结果是undefinedfun2('王五');

总结
一,定义:
实现功能的代码块
工具,实现项目功能的工具

    二,优点:封装重复使用任意位置调用三,语法1,关键词 : function2,函数名称 : 符合变量的命名规范3,函数的参数 : 函数的执行数据4,函数的程序 : 封装在函数{}中的程序内容5,函数的返回值 : return 定义函数的返回值,并且会终止之后函数程序的执行四,函数的封装方式1,声明式function fun(){return 100;}2,匿名式,赋值式var fun1 = function(){return 200;}五,函数的存储执行方式1,栈  存储基本数据类型变量名称存储的是数值数据2,堆  存储复杂数据类型变量名称存储在栈中,其中存储的是函数的内存地址函数存储在堆中,有一个内存地址调用变量,通过内存地址,找到函数,执行函数中的程序六,函数的基本封装过程1,定义程序,实现功能2,定义函数,封城程序,也就是将程序写入{}中3,定义参数4,定义返回值5,考虑输入数据的容错6,考虑参数的默认值7,添加函数说明

函数的基本概念以及函数封装相关推荐

  1. 7.1 函数的基本概念和定义

    7.1 函数的基本概念和定义 1.函数的基本概念 2.函数的定义和函数返回值 (2.1)无返回类型,无形参 (2.2)有参数,有返回类型 3.整理至https://appd872nnyh9503.pc ...

  2. Tensorflow一些常用基本概念与函数

    参考文献 Tensorflow一些常用基本概念与函数 http://www.cnblogs.com/wuzhitj/archive/2017/03.html Tensorflow笔记:常用函数说明: ...

  3. 前端:JS/22/函数(函数的概念,函数的定义格式,函数定义格式的说明,函数的调用,函数的参数),全局变量和局部变量,拷贝传值和引用传址,匿名函数,二维数组,对象,自定义对象的创建

    函数 1,函数的概念 函数,是将一段公共的代码进行封装,给它起个名字叫"函数" 函数可以一次定义,多次调用:函数可以将常用的功能代码,进行封装,如:用户名的验证,验证码函数,邮箱验 ...

  4. js基础--javascript基础概念之函数

    js基础--javascript基础概念之函数 引用w3c介绍: 函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块. JavaScript 函数语法 函数就是包裹在花括号中的代码块,前面使用 ...

  5. 四、函数的基本概念和使用

    文章目录 一.函数的概念和特点 二.函数的创建和执行 三.函数的参数 - 入口 四.函数的返回值 - 出口 五.练习 一.函数的概念和特点 函数的概念:由一堆代码组成,实现了某个功能,可以被直接调用或 ...

  6. python关于函数作用的描述_Python函数的概念和使用

    函数 为了便于程序的维护和更好的实现模块化,好的程序都会分解为很多函数. 可以这么说,对于任何的编程语言,函数都是一个非常重要的概念. python 不仅简化了函数的定义过程,而且还大量借鉴了其他函数 ...

  7. 指针数组概念 和 函数指针数组实战 和指针函数的概念和实战

    1.指针数组概念 int (*p)[4]; 是一个数组指针 ,强调的是指针,这是指针指向的是某个数组 (*p)这个指针含有四个元素的一维数组 指针数组呢? 强调的是数组 我们可以定义一个数组,数组里面 ...

  8. Python基础概念_5_函数

    函数 6 函数 6.1 简介 函数是被定义的完成指定功能的可被反复使用的代码段.比如我们想实现一个功能,想知道当前的时间,格式是:年-月-日 时:分:秒.我们就可以这么写: import time d ...

  9. python函数和方法概念_第48p,什么是函数?,Python中函数的定义

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第48篇文章,第三阶段的课程:Python进阶知识:详细讲解Python中的函数(一)====> 函数概念介绍(上篇). 函数 ...

  10. c++ 函数指针_进化论——从函数指针到被结构封装的函数指针及参数的应用举例...

    ↑↑↑ 点击上方公众号名称关注,不放过任何转变的机会. ✎ 编 者 悟 语 借口再小也会瓦解人的意志. 文 章 导 读 今天带大家用下函数指针,然后将函数指针和函数参数封装到结构体中,接着将数据用动态 ...

最新文章

  1. 9.9元,2顿饭?中国的食品黑科技搞出了可以直接“喝的饭”
  2. 如何将MATLAB程序发布为独立的不依赖MATLAB环境可执行的程序包(基于Matlab R2015b版 )
  3. MariaDB 数据库索引详解(9)
  4. Django框架——模型(数据库操作)
  5. 信息学奥赛一本通 1962:【13NOIP普及组】表达式求值 | 洛谷 P1981 [NOIP2013 普及组] 表达式求值
  6. 数组删除一行_一行Python代码能做出哪些神器的事情
  7. 高通msm8996配置wlan0 Mac地址
  8. php mess,Mess.php
  9. shell 封装方法_反弹shell逃逸基于execve的命令监控(上)
  10. C语言日志库zlog的简单配置及使用
  11. linux拷贝文件命令
  12. c语言setw,在C++中,setw(int n)
  13. Java 读取Word中的脚注、尾注
  14. Java8 CompletableFuture(2)回调函数 thenApply thenAccept thenRun
  15. upc 7834 送礼物
  16. RT-Thread内核-__rt_ffs函数
  17. cad怎么倒圆角_15个超实用CAD技巧,效率递增10倍,设计院师傅都在用
  18. 全志Tina Linux 系统裁剪 boot0裁剪 uboot裁剪 内核裁剪 文件系统裁剪 C库裁剪 文件系统压缩
  19. 30亿网民坐稳啦!互联网之门将要换钥匙
  20. 流体管道除铁器 磁性过滤器 管道篮式磁棒过滤器

热门文章

  1. tpshop php版本,TPshop安装向导 - Powered by TPshop
  2. python监听鼠标键盘_python用pynput监听控制键盘鼠标
  3. UE4(Unreal Engine4)快捷键
  4. firefox flash插件
  5. ubuntu自带Firefox安装flash插件
  6. linux命令du -sh,du命令_Linux du 命令用法详解:显示每个文件和目录的磁盘使用空间...
  7. 3D打印牛排,入口即化!你敢吃吗?
  8. 清除90天苹果充值记录_王者荣耀开启安卓、苹果系统数据互转
  9. Python3.8场景式编程学习与训练- 第1章 入门基础 Python学习方法论与学习资源
  10. 亚马逊电商可以用阿里云服务器吗