函数数据类型function

  • 创建函数
  • 函数的中的返回值
  • 匿名函数

函数:就是一个方法或者一个功能体,函数就是把实现某个功能的代码放到一起进行封装,以后想要操作实现这个功能,只需要把函数执行即可=>“封装”:减少页面中重复的冗余代码,提高代码重复使用率(低耦合高内聚)。
  洗衣机就是一个函数,生产洗衣机就是封装一个函数(把实现某些功能的代码封装进来),生产的时候不知道用户洗衣服的时候用什么水,什么洗衣粉,洗衣液,柔顺剂,洗什么衣服等,我们需要提供入口(提供的入口在函数中叫做形参,执行的时候放的具体的东西叫做实参),洗完衣服需要能拿出来,洗衣机提供一个出口(在函数中叫做返回值:把函数处理后的结果能够返回给外面用)

  • 创建函数

    • 形参
    • 返回值
  • 执行函数
    • 实参
  • arguments
  • 函数底层运行机制

创建函数

//=>ES5 老方式
function [函数名]([形参变量1], ...){//函数体: 基于JS完成需要实现的功能
}
//执行函数
[函数名]([实参1], ...)
/*
sum:函数名,代表这个函数
sum():让函数执行,代表的是函数执行返回的结果
n/m:是形参,是变量,用来存储函数执行时传递的实参
1/2:是实参,传递给形参变量的值
*/
function sum(n,m){let  result = n+m;result *=10;result /= 2;console.log(result);
}
sum(1,2)

形参的细节

创建函数的时候我们设置了形参变量,但如果执行的时候并没有传递给对应的实参值,那么形参变量默认的值是:undefined

function sum(n,m){let  result = n + m;result *=10;result /= 2;console.log(result);
};
sum();//=>NaN
sum(10);//=>NaN
sum(10,20);//=>150
sum(10,20,30);//=>150

所以会先做一个形参默认处理:如果没有传递形参,给予一个默认值,这样就不会出现NaN了。

function sum(n,m){if(typeof n === "undefined"){n = 0;
}
if(typeof m === "undefined"){m = 0;
};
// let  result = n + m;result *=10;result /= 2;console.log(result);
};
sum();//=>0
sum(10);//=>50
sum(10,20);//=>150
sum(10,20,30);//=>150

函数的中的返回值

函数执行的时候,函数体内部创建的变量,我们是无法获取的或者操作的,如果想要获取内部的信息, 我们需要基于RETURN返回值机制,把信息返回才可以。

RETURN的一定是值,如果没有写return,函数默认返回值是undefined。

函数体中遇到return,后面代码则不在执行。(循环体遇到continue和break也会停止循环)

function sum(n,m){if( n === undefined|| m === undefined){return ;//后面代码则不在执行。}let  result = n + m;//此处是把result变量存储的值返回给外面return result; // return 30;
};
let aa = sum(10,20);//此处必有有一个变量接收返回的值,才可以获取到sum函数内部result存储的值。
console.log(aa);//=> Uncaught ReferenceError: result is not defined

匿名函数

匿名函数之函数表达式:把一个匿名函数本身作为值赋值给其他东西,这种函数一般不是手动触发的,而是靠其他程序驱动触发执行(触发某个时间的时候把函数执行)

// document.body.onclick = ;
// setTimeout(function(){},1000);//=> 设置定时器,1000MS后执行匿名函数
// 匿名函数之自执行函数:创建完一个匿名函数,紧接着就把当前函数加小括号执行
(function () {n = 100
})(100)

数据类型-函数数据类型function相关推荐

  1. clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数

    clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数 算数函数 ...

  2. 4.函数数据类型的运行机制

    1.17函数数据类型的运行机制 在js中,函数就是一个方法(一个功能体),基于函数一般都是为了实现某个功能 var total=10;total+=10;total=total/2;total=tot ...

  3. matlab常用函数——数据类型函数

    三.基本数据类型函数 1)数值函数 double:转换为双精度浮点数 single:转换为单精度浮点数 typecast:在不改变数据大小情况下转换数据类型  Y=typecast(X,type) t ...

  4. html js 添加数据类型,js数据类型判断和转换

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 前言 无论笔试还是面试,总会问到数据类型和隐式转换.今天彻底整理一下这块的知识,希望对大家有帮助. 看到下面的题,是不是 ...

  5. JavaScript数据类型基本数据类型与引用数据类型的区别

    JavaScript数据类型 1.JavaScript判断数据类型 typeof操作符 使用typeof操作符可以返回变量的数据类型 typeof操作符有带括号和不带括号两种用法 typeof (变量 ...

  6. 数据类型和存储上的差别,基本数据类型,引用数据类型

    在 js 中把我们的数据进行了分类,可以理解为 2 大类 基本数据类型: string,number,null,Boolean,undefined,symbol 引用数据类型: Object,Arra ...

  7. MySQL---- 自定义函数(FUNCTION)

    MySQL 自带的函数可能完成不了我们的业务需求,这时候就需要自定义函数. 自定义函数是一种与存储过程十分相似的过程式数据库对象.它与存储过程一样,都是由 SQL 语句和过程式语句组成的代码片段,并且 ...

  8. Oracle进阶(八)自定义函数(Function)

    1.函数语法 1.1 创建语法 --创建函数 CREATE OR REPLACE FUNCTION 函数名(参数1 模式 参数类型)RETURN 返回值类型 AS变量1 变量类型;变量2 变量类型; ...

  9. 前端基础(三)_JavaScript数据类型(基本数据类型、复杂数据类型)

    一.数据类型分类 1.1.数据类型分类 JavaScript的数据类型为弱类型,即最开始的时候并不知道变量是什么类型,必须通过后面的值才能知道. JavaScript的数据类型分为简单数据类型(也称为 ...

最新文章

  1. 如何計算SDRAM使用頻寬?
  2. 集合,stack,queue,dictionary,ArrayList,listT
  3. Linux-编写Shell的几个技巧_02
  4. [转载]LEB128格式简介(CN)
  5. 内存为什么还有管理?
  6. js json数组_JaveScript对象篇和数组篇
  7. Redhat Linux配置远程桌面
  8. OSG仿真案例(5)——模型的平移、缩放、旋转
  9. python实现科学计算器_python实现简易版计算器
  10. VC++_2010_学习版_下载教程
  11. Linux下sopcast
  12. 谢霆锋断言暂不再婚 赞张柏芝教子有方
  13. 人生不设限,要勇于去闯_《不如去闯》读书心得
  14. Vue+element实现图片的上传与显示
  15. 机械键盘轴的区别用什么轴比较好 机械键盘轴的选择
  16. Android--模拟点击屏幕
  17. 如何针对商品抢购活动展示效果做功能测试?
  18. 控制理论结构图——一目了然全面了解控制理论(这个已不是最新的)
  19. 一个最简单的C#管道(NamePipe)全双工通信实例
  20. 从我的职业生涯有感而发

热门文章

  1. 分享网站文章到微信朋友圈,缩略图怎么设置
  2. 科研必备—Grammarly安装及下载
  3. python创建字典和包的区别_[Python]-10-模块与包
  4. 业务流程重组实施步骤
  5. 埃森哲携手阿里云共建基于云原生的消费者运营中台解决方案
  6. VS2019 MFC字体模糊
  7. 【源码】直流电机速度控制的Simscape模型
  8. 初中生关于计算机的科幻作文600字,科幻作文初中600字
  9. 2 level optimization
  10. 【多媒体课件制作软件】Focusky教程 | 设置多个对象同时播放动画