位置: IT常识 - 正文

function 函数(function函数的定义)

编辑:rootadmin
function 函数 一、函数的基本注意事项

推荐整理分享function 函数(function函数的定义),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:matlab function函数,function函数里面一般定义什么,function函数的用法MATLAB,function函数里面一般定义什么,function函数的定义,function函数的用法,function函数r语言,function函数的定义,内容如对您有帮助,希望把文章链接给更多的朋友!

function函数的名字也是一个标识符,通过关键字function申明一个函数

function 函数名(){ 代码块 }

二、函数基本用法1、形参与实参

1、形参与实参可以有无数个,实参按照顺序赋值给形参;

2、实参个数不一定要与实参个数相同,没有实参赋值的形参默认数值为undefined;

3、arguments能够获取到实参列表的数据,也能够更改数据;

4、形参数据类型是由实参的数据类型决定;

<script> function func(x,y){ console.log(arguments) //调用函数传进来的实参列表 arguments[0]='啊这' console.log(arguments[0]) console.log("我是"+x+",我今年"+y+"岁") } func('学生',18) func('老师',30) func('小张') func('小李',19,23222) //23222被忽略</script>

2、不定参数实现重载的功能

可以使用arguments.length获取实参列表的参数个数

<script> function nums(){ switch(arguments.length){ case 1: console.log(arguments[0]) break case 2: console.log(arguments[0]+arguments[1]) break case 3: console.log(arguments[2]-arguments[1]-arguments[0]) } } nums(1) nums(1,2) nums(1,2,10)</script>

3、函数的返回值function 函数(function函数的定义)

函数可以写多个return,但是只有一个return可以执行;

函数可以作为参数使用<script> function func(num1,num2){ return (num1+num2); } var result = func(func(10,20),30); //函数作为参数,结果为60 console.log(result)</script>

4、函数的申明与函数表达式函数申明

函数申明一定是有名函数

<script> function func(a,b){ return a; }</script>函数申明中的函数提升<script> console.log(sum(10,10)) //20 function sum(a,b){ //函数提升到前面申明 return (a+b) }</script>

function虽然写在后面,但是会先在前面进行申明,所以代码正常运行,输出20

函数表达式

函数表达式大部分是匿名函数,也可以写成有名函数

<script> var num1 = function func(){ console.log("有名函数") } var num2 = function(){ console.log("匿名函数") }</script>

有名函数表达式的名字(func)只能在函数中使用,不能在函数外使用; 

函数表达式中的函数提升<script> console.log(sum(10,10)) //20 var func = function sum(a,b){ //var func;提升在前面定义,但是函数还是在后面才申明 return (a+b) }</script>

使用函数表达式的方式会报错,因为提升的是变量的提升,函数仍然是在后面才赋值给变量func

三、函数进阶用法1、IIFE 即时调用函数表达式

本质就是将函数转换为表达式,大多使用匿名函数

可以使用括号()将函数转换为表达式,实现在定义的时候直接调用它;除了括号,还可以使用+、-、~、!等其他符号实现即时调用的功能;

<script> //方法一 (function (a,b){ console.log(a+b); })(10,20); //方法二 (function (a,b){ console.log(a+b); }(10,20)) //方法三 + function (a,b){ console.log(a+b); }(10,20); //方法四 - function (a,b){ console.log(a+b); }(10,20); //方法五 ~ function (a,b){ console.log(a+b); }(10,20); //方法六 ! function (a,b){ console.log(a+b); }(10,20);</script>

IIFE的作用:封闭一个独立的作用域2、函数作用域

作用域:变量有效作用的范围;

全局作用域:

所有在script标签中的代码都处在全局作用域中,在页面开启时创建全局对象GO(Global Object),在页面关闭时销毁GO对象,全局作用域的变量是GO对象的属性名,变量的值是GO的属性值;

函数作用域:

编写在函数中的代码都处在函数作用域中,函数执行时创建AO(Active Object)对象,函数执行结束时销毁AO对象,函数作用域中的变量是AO对象的属性,变量的值是AO对象属性的值;

本文链接地址:https://www.jiuchutong.com/zhishi/299475.html 转载请保留说明!

上一篇:跟着AI学AI(1): 线性回归模型(ai线型工具介绍)

下一篇:【原生Ajax】全面了解xhr的概念与使用。(原生ajax和axios的区别)

  • 软件企业会计科目分类
  • 发票进项税额抵扣的最晚时间
  • 医药零售行业 利润构成
  • 非货币性资产含义
  • 哪些属于不动产权
  • 公司收个人不开票的货款是否可以收取现金?
  • 一般纳税人存货采购成本包括
  • 合同取消写什么
  • 资产减值损失会影响利润吗
  • 法人往公户转账需要备注吗
  • 税务利润表怎么填
  • 维修税控设备分录
  • 抵扣联和发票联算一张发票吗
  • 个人给公司付款怎么做分录
  • 发票抬头写个人税号怎么写
  • 增值税发票复印件
  • 当月取得的进项必须当月勾选吗
  • mac book air文件夹怎么重命名
  • 一家公司各项费用支出
  • qbupdate.exe - qbupdate是什么进程 有什么作用
  • 劳务费和服务费税率一样吗
  • 主营业务收入明细账图片
  • 股份支付的成本费用可否税前扣除?
  • 免抵退税务处理
  • 低值易耗品报废账务处理
  • 公司没有营业额零报税的后果
  • html 调用扫码
  • 无偿占用资金企业有哪些
  • wx-java
  • commonjs的特点
  • php sdk使用教程
  • 出口货物视同内销征税的会计核算?
  • zgrep命令详解
  • 收购发票的开具管理
  • 残保金季报要填上年职工人数
  • 收到客户付款多久到账
  • 非流动资产基金属于什么科目
  • 汇算清缴账务
  • 计提的坏账准备计入什么科目
  • 违约拒绝赔偿怎么办
  • 坏账的计算公式
  • 企业所得税的纳税调整项和比例
  • 商贸企业的存货周转率什么水平属于正常
  • 建筑劳务单位
  • 利润分配未分配利润期末有余额吗
  • mysql 的load data infile
  • 计提制造费用
  • 行政事业单位职工工伤有哪些待遇
  • 消防设备要多少钱
  • 什么人可以申请免税
  • 原材料基本账务处理办法
  • 工会经费和福利费绩效目标怎么写
  • 公司餐费怎么入账
  • 业务招待费扣除标准是多少
  • 对于成员单位归集至集团母公司账户的资金
  • 外币存款利息是不是外币
  • 预付账款属于哪一类账户
  • 购入固定资产的会计科目
  • 收到保险公司的赔款计入什么科目
  • 产品成本核算有多条原则和要求
  • mysql语句删除表
  • vs2010安装失败的解决办法
  • 在mac上如何使用微信
  • 在WINDOWS系统中用鼠标拖动非最大化窗口的标题栏可以
  • win10邮件和日历怎么更新新版outlook
  • ubuntu15.04安装教程
  • unity小技巧
  • 安卓骰子游戏
  • shell脚本 if -e
  • shell脚本输入
  • node+mongodb
  • js effect
  • jquery常用的事件绑定函数有哪些
  • javascript导航栏
  • JavaScript程序设计形考任务第一次任务
  • 安卓activity类
  • 个税申报系统如何增加新单位
  • 消费税由消费者承担吗
  • 个体工商户地税怎么申报
  • 全国税务稽查会议
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设