javascript函数中参数传递问题示例探讨


Posted in Javascript onJuly 31, 2014

相信每一位刚接触javascript的同学在函数参数传递上都会很疑惑,原因无他,那就是它的语法太怪异了,你定义一个函数

例如

function test(name,msg){
return 'hello' + name + msg;
}

那么你在调用的时候怎么调呢,你可以test('Eric'),test('Eric','welcome to javascript')甚至你可以给它传递任意多个参数,并且类型随意.这是多么爽的一件事情,学过c++/c#或者java的同学可能就会想到函数重载。但是,我要告诉你的是,javascript中不存在函数重载,如果你定义了两个同名函数,那么先定义的函数将被后定义的覆盖,意思便是你想要的结果只能从后定义的函数中得到。

好了,言归正传,为什么javascript的函数传递可以这么随意呢,那我们就先来看看传过来的参数都存到哪里吧。实际上,在它的内部实现中,所有传过来的参数都存在一个数组中。函数接收到的始终是这个数组,而不关心这个数组包含了哪些参数。现在就好理解了,我们定义了一个函数,调用的时候参数可以随便传,你传多少它都给你加入数组中,如果不传,那么你的形参全部都是‘undefined',这并不会有什么语法错误,但是语义上就不好说了。

好了,,,,,,,,第一次写博客,小弟不才,让各位见笑了,希望这篇博文能对你有些许帮助。。。。

I LOVE YOU,GUYS!

Javascript 相关文章推荐
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
Jul 10 Javascript
jQuery图片滚动图片的效果(另类实现)
Jun 02 Javascript
jQuery 全选/反选以及单击行改变背景色实例
Jul 02 Javascript
用html+css+js实现的一个简单的图片切换特效
May 28 Javascript
浅谈React 属性和状态的一些总结
Nov 21 Javascript
JS键盘版计算器的制作方法
Dec 03 Javascript
JS实现动态给标签控件添加事件的方法示例
May 13 Javascript
vue中如何使用ztree
Feb 06 Javascript
js与jQuery实现获取table中的数据并拼成json字符串操作示例
Jul 12 jQuery
JS实现盒子拖拽效果
Feb 06 Javascript
js删除指定位置超链接中含有百度与360的标题
Jan 06 Javascript
一百多行代码实现react拖拽hooks
Mar 23 Javascript
JavaScript数值转换的三种方式总结
Jul 31 #Javascript
new Date()问题在ie8下面的处理方法
Jul 31 #Javascript
JS数组的遍历方式for循环与for...in
Jul 31 #Javascript
js中回调函数的学习笔记
Jul 31 #Javascript
基于socket.io和node.js搭建即时通信系统
Jul 30 #Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
Jul 30 #Javascript
JQuery实现表格动态增加行并对新行添加事件
Jul 30 #Javascript
You might like
DC的38部超级英雄动画电影
2020/03/03 欧美动漫
destoon出现验证码不显示时的紧急处理方法
2014/08/22 PHP
PHP实现扎金花游戏之大小比赛的方法
2015/03/10 PHP
PHP代码判断设备是手机还是平板电脑(两种方法)
2015/10/19 PHP
PHP实现蛇形矩阵,回环矩阵及数字螺旋矩阵的方法分析
2017/05/29 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
phpwind放自动注册方法
2006/12/02 Javascript
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
javascript 进阶篇3 Ajax 、JSON、 Prototype介绍
2012/03/14 Javascript
jquery dialog open后,服务器端控件失效的快速解决方法
2013/12/19 Javascript
使用Javascript实现选择下拉菜单互移并排序
2016/02/23 Javascript
在React框架中实现一些AngularJS中ng指令的例子
2016/03/06 Javascript
jQuery中extend函数简单用法示例
2017/10/11 jQuery
layDate日期控件使用方法详解
2018/11/15 Javascript
Vue源码中要const _toStr = Object.prototype.toString的原因分析
2018/12/09 Javascript
javascript导出csv文件(excel)的方法示例
2019/08/25 Javascript
Vue利用Blob下载原生二进制数组文件
2019/09/25 Javascript
JQuery表单元素取值赋值方法总结
2020/05/12 jQuery
[29:23]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场1
2014/05/23 DOTA
[11:01]2014DOTA2西雅图邀请赛 冷冷带你探秘威斯汀
2014/07/08 DOTA
python 正则式 概述及常用字符
2009/05/07 Python
Python实现替换文件中指定内容的方法
2018/03/19 Python
python学生信息管理系统(完整版)
2020/04/05 Python
详解Python发送email的三种方式
2018/10/18 Python
对django2.0 关联表的必填on_delete参数的含义解析
2019/08/09 Python
删除pycharm鼠标右键快捷键打开项目的操作
2021/01/16 Python
食堂个人先进事迹
2014/01/22 职场文书
自动化毕业生专业自荐书范文
2014/02/04 职场文书
师德承诺书
2015/01/20 职场文书
业务员辞职信范文
2015/03/02 职场文书
大学生实习证明
2015/06/16 职场文书
python爬取某网站原图作为壁纸
2021/06/02 Python
压缩Redis里的字符串大对象操作
2021/06/23 Redis
浅谈JavaScript作用域
2021/12/06 Javascript
Beekeeper Studio开源数据库管理工具比Navicat更炫酷
2022/06/21 数据库
windows10声卡驱动怎么安装?win10声卡驱动安装操作步骤教程
2022/08/05 数码科技