js基础_27、函数的参数
可以在函数的()中来指定一个或多个形参(形式参数),多个形式参数之间用逗号(,)隔开,声明形式参数就相当于在函数内部声明了对应的变量,但是并没有赋值。
在调用函数时,可以在()中指定实参(实际参数),实参将会赋值给函数中对应的形参。调用函数时解析器(浏览器)不会检查实参的类型,所以要注意,是否有可能会接收到非法的参数,如果有可能则需要对参数进行类型的检查。
调用函数时,解析器也不会检查实参的数量,多余实参不会被赋值。如果实参的数量少于形参的数量,则没有对应实参的形参的值将是Undefined,函数的实参可以是任意的数据类型。
函数的参数可以是任意数据类型
函数的参数可以是一个对象
当我们的参数过多时,可以将参数封装到一个对象中,然后通过对象传递
var sayhello=function (o){
console.log('你好,我叫'+o.name+',我是'+o.gender+'生,我今年'+o.age+'岁,住在'+o.address)
}
var obj={
name:"小明",
gender:'男',
age:19,
address:'四川'
}
sayhello(obj);
函数的参数可以是一个函数
因为函数本身也是一个对象
var sayhello=function (o){
console.log('你好,我叫'+o.name+',我是'+o.gender+'生,我今年'+o.age+'岁,住在'+o.address)
}
var obj={
name:"小明",
gender:'男',
age:19,
address:'四川'
}
function fun(a){
a(obj);
}
fun(sayhello);//结果还是输出一句话,和直接调sayhello函数一样
将匿名函数作为参数
function fun(a){
console.log(a);
}
fun(function(){
})
函数加括号与不加的区别
fun()
—调用函数,相当于使用函数的返回值
fun
—函数对象,相当于直接使用函数对象(输出会得到函数结构)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本