位置: 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的区别)

  • 如何有效地投放kol获得最大的推广效果?(投放的流程)

    如何有效地投放kol获得最大的推广效果?(投放的流程)

  • 电子邮箱格式正确写法(电子邮箱格式)(电子邮箱格式正确格式手机格式)

    电子邮箱格式正确写法(电子邮箱格式)(电子邮箱格式正确格式手机格式)

  • 苹果11怎么设置骚扰电话号码(苹果11怎么设置悬浮球)

    苹果11怎么设置骚扰电话号码(苹果11怎么设置悬浮球)

  • 苹果8怎么给应用加密码(苹果8怎么给应用上密码锁屏)

    苹果8怎么给应用加密码(苹果8怎么给应用上密码锁屏)

  • 云闪付扫一扫单笔限额(云闪付扫一扫单笔五万可以吗)

    云闪付扫一扫单笔限额(云闪付扫一扫单笔五万可以吗)

  • 抖音喜欢隐藏2个无效视频(抖音喜欢隐藏了一个无效视频是什么意思)

    抖音喜欢隐藏2个无效视频(抖音喜欢隐藏了一个无效视频是什么意思)

  • 微信通话中有电话进来(微信通话中有电话声音对方能听见吗)

    微信通话中有电话进来(微信通话中有电话声音对方能听见吗)

  • 刷卡机连接服务器失败是什么原因(刷卡机连接服务器异常)

    刷卡机连接服务器失败是什么原因(刷卡机连接服务器异常)

  • 苹果手机锁屏后自动亮屏(苹果手机锁屏后时间显示变暗了)

    苹果手机锁屏后自动亮屏(苹果手机锁屏后时间显示变暗了)

  • 抖音为什么保存不了别人的视频(抖音为什么保存不到本地)

    抖音为什么保存不了别人的视频(抖音为什么保存不到本地)

  • 华为p40能不能开空调(华为P40能不能开90帧)

    华为p40能不能开空调(华为P40能不能开90帧)

  • qq的用户数据怎么这么大(qq的用户数据是什么内容)

    qq的用户数据怎么这么大(qq的用户数据是什么内容)

  • 苹果下东西验证码看不见(苹果手机下软件验证)

    苹果下东西验证码看不见(苹果手机下软件验证)

  • 笔记本电脑怎么锁屏幕(笔记本电脑怎么选择配置才好)

    笔记本电脑怎么锁屏幕(笔记本电脑怎么选择配置才好)

  • 电脑软件打不开无响应(电脑软件打不开没反应怎么回事鼠标用不了)

    电脑软件打不开无响应(电脑软件打不开没反应怎么回事鼠标用不了)

  • 11pro双卡双待吗(11pro是否双卡)

    11pro双卡双待吗(11pro是否双卡)

  • 淘宝退货时间最长多久(淘宝退货最迟多少天)

    淘宝退货时间最长多久(淘宝退货最迟多少天)

  • 优酷能不能添加好友(优酷可以添加好友吗)

    优酷能不能添加好友(优酷可以添加好友吗)

  • 苹果x一直更新icloud(xr新机停留在更新icloud)

    苹果x一直更新icloud(xr新机停留在更新icloud)

  • 手机座公交车怎么扫码(手机坐公交车怎么弄)

    手机座公交车怎么扫码(手机坐公交车怎么弄)

  • 苹果iphone11介绍(apple11介绍)

    苹果iphone11介绍(apple11介绍)

  • 线下消费送流量在哪里(2021送流量活动)

    线下消费送流量在哪里(2021送流量活动)

  • 华为mate20保时捷和普通版区别

    华为mate20保时捷和普通版区别

  • 华为手机屏蔽骚扰电话怎么设置(华为手机屏蔽骚扰电话可以收到短信么)

    华为手机屏蔽骚扰电话怎么设置(华为手机屏蔽骚扰电话可以收到短信么)

  • 如何清除手机使用痕迹(如何清除手机使用密码)

    如何清除手机使用痕迹(如何清除手机使用密码)

  • 华为怎么看屏幕厂家(华为怎么看屏幕老化)

    华为怎么看屏幕厂家(华为怎么看屏幕老化)

  • 华为mate20有无线充电吗(华为mate20有无线充电功能吗)

    华为mate20有无线充电吗(华为mate20有无线充电功能吗)

  • 可以抵扣进项税额的增值税普通发票
  • 减免税流程
  • 开矿泉水发票怎么开?
  • 购买车间使用的设备计入什么
  • 企业为清算状态是什么
  • 建筑企业异地申报个税
  • 个税上个月没报下个月累计会怎么样
  • 技术服务费属于哪个商品编码
  • 二季度资产总额怎么计算
  • 土地使用权的账面价值计入在建工程
  • 退休工资要缴纳税吗
  • 如何降低应用耗电
  • 融资租赁出租方会计处理
  • 公司收个人不开票的货款是否可以收取现金?
  • 销售返利计入什么科目
  • 安全费用提取使用管理办法2022 136
  • 防洪费怎么申报
  • 没有取得发票可以抵扣成本吗
  • 按折现率计算现值
  • 沙特将开征增值税和特殊商品消费税
  • 统借统贷协议
  • 定额手撕发票怎么买
  • 在建工程的施工方案可以外传吗
  • phpcms手册
  • 如何找到您会获得的权限
  • php socket_read
  • 会计实务中计提是什么意思
  • 销售费用里面的支付的安装人工费汇算清缴时计入哪里
  • 私营独资企业交个税怎么交
  • 维多利亚瀑布有多高?多宽?
  • 生产企业的成本有哪些
  • 业务招待费调增后仍然亏损
  • 用土地抵账合法吗
  • php 位运算符
  • php单例模式的简写是什么
  • 搭建本地yum
  • 发票取得取得售卡方公司开具的增值税专用发票
  • 不动产进项税额抵扣新政策2021
  • 如何查询以前申请的新西兰签证记录
  • 高新企业申请流程
  • 开票是否享受优惠
  • 建筑安装个人所得税征收管理办法
  • SQL Server中的XML数据进行insert、update、delete操作实现代码
  • mysql中文乱码解决
  • 资产负债表是根据科目余额表填的吗
  • 盘盈盘亏的定义
  • 无形资产摊销完以后得账务处理
  • 公司缴纳社保会计分录怎么做
  • 工业企业销售分录
  • 公司对外投资企业与行政许可的区别是什么
  • 产品销售收入的确认条件
  • 专利权转让的条件
  • 累计折旧的计提会计分录
  • 排污费征收范围包括
  • 记账凭证的审核与编制可以是一个人吗
  • 记账凭证的填制与审核
  • 什么是结账?结账前要做哪些准备工作?
  • 过程要求可包括哪些内容
  • mssql in
  • sqlserver字符串切割
  • mac os x 10.12.2 Beta1怎么升级?macOS Sierra 10.12.2 Beta升级图文教程
  • 光盘做镜像文件
  • 教大家如何重做作业
  • win10桌面版微信连不上网
  • remupd.exe - remupd是什么进程 有什么用
  • mac怎么使用islide
  • ubuntu查cpu信息
  • win7系统出现蓝屏
  • 多文件操作
  • 用户访问控制手段
  • windows错误1058
  • win7升级win8.1
  • python如何不换行
  • linux 服务器重启
  • python的基础代码
  • 教程java
  • 个体户税务注销
  • 深圳地税电子税务局
  • 北京市税务局的待遇怎么样
  • 一般纳税人申请流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设