当前位置:网站首页>js中的函数
js中的函数
2022-07-31 05:11:00 【杂乱无章的我】
JavaScript中的函数也是一个对象,函数中可以封装一些功能(代码),在需要时可以执行这些功能(代码)。函数中可以保存一些代码在需要的时候调用。
函数function:
- 函数也是一个对象,函数中可以封装一些功能,需要时可以执行这些功能。
- 函数中可以保存一些代码在需要时调用,使用typeof检查一个函数对象时,会返回function。
创建一个函数对象,可以将要封装的代码以字符串的形式传递给构造函数。封装到函数中的代码不会
立刻执行,函数中的代码会在函数调用时候执行。
调用函数语法:函数对象()
如:var fun = new function(){console.log(1)};
fun()
输出结果为1;
调用函数时,函数中封装的代码会按照内部代码顺序执行。
创建函数:使用函数声明、函数表达式来进行创建:
函数声明语法:
function 函数名([形参1,形参2....形参n]){
语句...
}
使用函数表达式来创建一个函数
var 函数名 = function([形参1,形参2....形参n]){
语句....
}
函数的形参与实参:
函数的形参:
可以在函数的()中来指定一个或多个形参(形式参数)。多个形参之间使用,隔开。
声明形参就相当于在函数内部声明了对应的变量。但是并不对其赋值。如:
function sum(a,b){console.log(a+b);}等价于
function sum(a,b){var a; var b ;console.log(a+b);}
在调用函数是,可以在()中指定实参(实际参数)。实参将会赋值给函数中对应的形参。如:
sum(1,2) 其中a,b均为形参。1,2均为对应的实参。
调用函数是解析器并不会检查实参的类型。所以在使用时需要检查一些非法的参数。
调用函数时,解析器也不会检查实参的数量。如sum(1,2,h,o)。
在使用过程中,多余的实参将不会被赋值。
如果实参的数量小于形参的数量,则没有对应实参的形参将是undefined
立即执行函数:
函数对象()
立即执行函数,函数定义完,立即被调用,这种函数叫做立即执行函数。
立即函数往往只会执行一次。如:
(function(a,b){
console.log("a="+a);
console.log("b="+b);
})(1,2);
输出结果为a=1,b=2。
方法:
对象的属性可以为任何值,同样也可以为函数。如果将一个函数作为一个对象的属性保存,那么我们称这个函数是这个对象的方法,调用这个函数就说调用这个对象的方法(method)。这只是名称上的改变。它与其他的函数并无区别。
边栏推荐
- MySQL压缩包方式安装,傻瓜式教学
- 10 【组件编码流程 组件自定义事件 全局事件总线】
- [Cloud native] Ribbon is no longer used at the bottom layer of OpenFeign starting from the 2020.0.X version
- Xiaobai learns reptiles - introduction to reptiles
- On the side of Ali, tell me what are the application scenarios of message middleware you know?
- For penetration testing methods where the output point is a timestamp (take Oracle database as an example)
- MySQL高级学习笔记
- Regular Expression Basics
- 对于输出点是时间戳的渗透测试方法(以Oracle数据库为例)
- leetcode-每日一题735. 行星碰撞(栈模拟)
猜你喜欢
Yuan prospect and four track of the universe
Memcached :安装
Getting to know regular expressions
(Crypto必备干货)详细分析目前NFT的几大交易市场
局部变量成员变量、引用类型、this,static(第五天)
Three-party login using wallet Metamask based on web3.0
【云原生】开源数据分析 SPL 轻松应对 T+0
什么是EVM兼容链?
The feign call fails, JSON parse error Illegal character ((CTRL-CHAR, code 31)) only regular white space (r
永恒之蓝漏洞复现
随机推荐
小白学爬虫——爬虫入门
vulhub靶场学习日记hackme1
vulhub靶场学习日记SickOs1.2
GUCCI, LV and other luxury giant universe how to layout yuan, other brands should keep up with?
Error: Cannot find module ‘D:\Application\nodejs\node_modules\npm\bin\npm-cli.js‘
NFTs: The Heart of Digital Ownership
(Crypto essential dry goods) Detailed analysis of the current NFT trading markets
Regular Expression Basics
leetcode-每日一题1252. 奇数值单元格的数目(模拟优化)
(Crypto必备干货)详细分析目前NFT的几大交易市场
DeFi 项目中的治理Token
Build vulhub vulnerability shooting range on kali
tf.keras.utils.pad_sequences()
The feign call fails, JSON parse error Illegal character ((CTRL-CHAR, code 31)) only regular white space (r
vulhub靶场学习日记xxe-lab
gin框架学习-GORM框架进阶之CRUD接口(数据库增删改查操作)
For penetration testing methods where the output point is a timestamp (take Oracle database as an example)
年终总结——岁月静好~
MySQL面试题大全(陆续更新)
闭包(二)