JavaScript 函数参数
JavaScript 函数参数
JavaScript 函数对参数的值没有进行任何的检查。
函数显式参数(Parameters)与隐式参数(Arguments)
functionName(parameter1, parameter2, parameter3) { // 要执行的代码…… }
函数显式参数在函数定义时列出。
函数隐式参数在函数调用时传递给函数真正的值。
参数规则
JavaScript 函数定义显式参数时没有指定数据类型。
JavaScript 函数对隐式参数没有进行类型检测。
JavaScript 函数对隐式参数的个数没有进行检测。
默认参数
ES5 中如果函数在调用时未提供隐式参数,参数会默认设置为: undefined
有时这是可以接受的,但是建议最好为参数设置一个默认值:
实例(ES5)
如果y已经定义 , y || 返回 y, 因为 y 是 true, 否则返回 0, 因为 undefined 为 false。 | |
---|---|
如果函数调用时设置了过多的参数,参数将无法被引用,因为无法找到对应的参数名。 只能使用 arguments 对象来调用。
ES6 函数可以自带参数
ES6 支持函数带有默认参数,就判断 undefined 和 || 的操作:
arguments 对象
JavaScript 函数有个内置的对象 arguments 对象。
argument 对象包含了函数调用的参数数组。
通过这种方式你可以很方便的找到最大的一个参数的值:
实例
通过值传递参数
在函数中调用的参数是函数的隐式参数。
JavaScript 隐式参数通过值来传递:函数仅仅只是获取值。
如果函数修改参数的值,不会修改显式参数的初始值(在函数外定义)。
隐式参数的改变在函数外是不可见的。
通过对象传递参数
在JavaScript中,可以引用对象的值。
因此我们在函数内部修改对象的属性就会修改其初始的值。
修改对象属性可作用于函数外部(全局变量)。
修改对象属性在函数外是可见的。
JavaScript 函数参数相关推荐
- JavaScript 函数参数是传值(byVal)还是传址(byRef)?
对于"JavaScript 函数参数是传值(byVal)还是传址(byRef)"这个问题,普遍存在一个误区:number,string等"简单类型"是传值,Nu ...
- 深入理解javascript函数参数
arguments javascript对参数要求很随意,她才不管你传进来的参数是什么数据类型,甚至可以不传参数.实际上,javascript函数调用甚至不检查传入形参的个数. 1 function ...
- javascript函数参数的传递问题
在javascript中数组是引用传递的.先来看一段代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN& ...
- 菜鸟教程 之 JavaScript 函数(function)
From:https://www.runoob.com/js/js-function-definition.html JavaScript 函数定义 JavaScript 使用关键字 function ...
- 深入理解javascript函数系列第二篇——函数参数
前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传进来的参数是什么数据类型,甚至可以不传参数.本文是深入理解javascript函数 ...
- JavaScript进阶系列01,函数的声明,函数参数,函数闭包
本篇主要体验JavaScript函数的声明.函数参数以及函数闭包. □ 函数的声明 ※ 声明全局函数 通常这样声明函数: function doSth() { alert("可以在任何时候调 ...
- JavaScript函数之实际参数对象(arguments) / callee属性 / caller属性 / 递归调用 / 获取函数名称的方法...
函数的作用域:调用对象 JavaScript中函数的主体是在局部作用域中执行的,该作用域不同于全局作用域.这个新的作用域是通过将调用对象添加到作用域链的头部而创建的(没怎么理解这句话,有理解的亲可以留 ...
- 有没有更好的方法在JavaScript中执行可选的函数参数? [重复]
本文翻译自:Is there a better way to do optional function parameters in JavaScript? [duplicate] This quest ...
- Javascript 函数声明,参数,立即执行函数
Javascript 函数 函数的声明 js中的函数是Function类创建的实例 let zy=new Function("a","console.log(a)&quo ...
最新文章
- 当前日期得到本周的开始和结束日期
- 打造一个宇宙 星系模拟产生对宇宙进化惊人见解
- 工业机器人电路图讲解话术_燃气传感器技术在防爆喷涂机器人中的应用
- 有一种努力叫:靠 自 己!
- robot ride edit 页面不显示_【框架】robot-framework预研
- Linux学习笔记:用户、用户组、文件系统和网络
- 三菱plc字高八位和低八位_三菱PLC如何传送高8位和低8位数据
- python爬取王者_python 爬取王者荣耀高清壁纸
- Awake OnEnable Start Update LateUpdate FixedUpdate
- GSM/GPRS/EDGE简介
- 2.5亿!华为成立新公司!
- 7个开源的SNS社交网络平台
- 中间表为什么可以不用实体类_法国蜗牛供不应求,为什么不用中国蜗牛代替?看完才知道真不可以...
- CentOS配置postgresql+postsql
- python写入文件后换行_python写入文件自动换行问题的方法
- 手把手教你学五笔打字输入法之1(如何快速巧记五笔字型字根表篇)
- 机器人语音问答流程及借助百度API Python实现
- 我选择了IT,我会用最大的热诚进军IT大技术!
- 获取Throwable里头的错误信息
- 根据HSV颜色空间识别魔方是否还原