js函数中写默认值的几种方式(常见的)
<script>
<!--第一种写法,我更喜欢第一种写法直观一些-->
function Person(name){
this.name = name || '默认名字乔丹';
}
var person = new Person('詹姆斯01');//this-->person
console.log(person.name,'看啥名字')//詹姆斯01,如果不传递参数或者传递的参数为假(比如'',null)---就是默认的乔丹
<!--第2种写法-->
function Person1(name){
console.log(arguments,'我是arguments')
this.name = arguments[0] ? arguments[0] : '默认的名字02'
}
console.log(new Person1('')); // 区别就是里面一个用|| 一个用三元,这里又可以了解一个只是点了 arguments
//第三种方法,这种方法适合用于参数较多的情况,使用了Jquery的扩展:这个我就不写了 很少用到jq了
</script>
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/arguments 链接Arguments的arguments是一个对应于传递给函数的参数的类数组对象。arguments对象是所有(非箭头)函数中都可用的局部变量。你可以使用arguments对象在函数中引用函数的参数。arguments对象不是一个Array。它类似于Array,但除了length属性和索引元素之外没有任何Array属性
但是它可以被转换为一个真正的Array:


您还可以使用Array.from()方法或扩展运算符将参数转换为真实数组:
Array.from专程数组
console.log(Array.from(arguments),'我是arguments对象,专程数组')
console.log([...arguments],'我是arguments对象,专程数组') 总结一下 arguments的三点用法:
@1 一、实现重载(类似循环)

二、同数组下标访问实参(这个比较常规)
三、属性callee指向自己(没怎么用过或者见过)
callee就是它的方法,这个方法用的不多,很容易被我们忽略,它指向的是正在被执行的Function对象,最常用的例子就是用来做递归了。
js函数中写默认值的几种方式(常见的)的更多相关文章
- (转)js函数参数设置默认值
原文:http://www.cnblogs.com/RightDear/archive/2013/06/26/3156652.html js函数参数设置默认值 php有个很方便的用法是在定义函数时 ...
- js函数参数设置默认值
php有个很方便的用法是在定义函数时可以直接给参数设默认值,如: function simue ($a=1,$b=2){ return $a+$b;}echo simue(); //输出3echo ...
- js 的函数参数的默认值问题
js函数参数设置默认值 php有个很方便的用法是在定义函数时可以直接给参数设默认值,如: function simue ($a=1,$b=2){ return $a+$b; } echo simu ...
- JS中给函数参数添加默认值(多看课程)
JS中给函数参数添加默认值(多看课程) 一.总结 一句话总结:咋函数里面是可以很方便的获取调用函数的参数的,做个判断就好,应该有简便方法,看课程. 二.JS中给函数参数添加默认值 最近在Codewar ...
- EF Core中,通过实体类向SQL Server数据库表中插入数据后,实体对象是如何得到数据库表中的默认值的
我们使用EF Core的实体类向SQL Server数据库表中插入数据后,如果数据库表中有自增列或默认值列,那么EF Core的实体对象也会返回插入到数据库表中的默认值. 下面我们通过例子来展示,EF ...
- 《Entity Framework 6 Recipes》中文翻译系列 (14) -----第三章 查询之查询中设置默认值和存储过程返回多结果集
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 3-6在查询中设置默认值 问题 你有这样一个用例,当查询返回null值时,给相应属性 ...
- 在JS函数中执行C#中的函数、字段
1.调用字段 cs文件的代码: ; protected void Page_Load(object sender, EventArgs e) { id = ; } js页面的代码: function ...
- ES6 函数参数的默认值
基本用法 在ES6之前,不能直接为函数的参数指定默认值,只能采取变通的方法. function log(x,y){ y = y||'world'; console.log(x,y); } log('k ...
- js函数中获得当前被点击元素
问题描述:在html页面中点击<a>或者’按钮‘,进入js中的函数,在js函数中获得被点击那个<a>或‘按钮’元素 解决方法:方法一: html中: <a>标签:& ...
随机推荐
- 网龙“MAD技术论坛”在榕举办 200余位技术人才共话“改变教育”
9月16日,由网龙网络公司主办.msup协办的“MAD技术论坛”在榕举办,来自美国.香港.苏州等地的技术大牛受邀来到福州,围绕“Make a difference to education”这一论坛主 ...
- 所生成项目的处理器架构“MSIL”与引用“***”的处理器架构“x86”不匹配。这种不匹配可能会导致运行时失败。请考虑通过配置管理器...
警告:所生成项目的处理器架构“MSIL”与引用“***”的处理器架构“x86”不匹配.这种不匹配可能会导致运行时失败.请考虑通过配置管理器更改您的项目的目标处理器架构,以使您的项目与引用间的处理器架构 ...
- Codeforces 670E - Correct Bracket Sequence Editor - [对顶栈]
题目链接:https://codeforces.com/contest/670/problem/E 题意: 给出一个已经匹配的括号串,给出起始的光标位置(光标总是指向某个括号). 有如下操作: 1.往 ...
- Uniform Resource Name Server
HTTP The Definitive Guide 按址标识 identify by address 按名标识 identify by name Domain Name Server Uniform ...
- Chap6:风险与监督[《区块链中文词典》维京&甲子]
- oracle基本命令笔记
最近由于工作原因,再次接触oracle,因此重新来熟知下oracle基本的命令. --改密码 1.运行——键入“cmd” 回车2.键入“sqlplus/nolog” 回车3.键入“conn/as sy ...
- scala-模式匹配
option模式匹配: var map1=Map("abc"->5,"eee"->6) var x=map1.get("abc" ...
- 如何将第三方jar包上传到Nexus私服
首先登陆私服服务器 以动力威视私服为例: 自己搭建的私服地址:http://192.168.1.5:8081/nexus/index.html#view-reposi ...
- Oracle 11g服务详细介绍及哪些服务是必须开启的
成功安装Oracle 11g后,共有7个服务,这七个服务的含义分别为: 1. Oracle ORCL VSS Writer Service: Oracle卷映射拷贝写入服务,VSS(Volume Sh ...
- [MySQL 5.6] information_schema.innodb_metrics
1. 概括 已关闭/打开的配置 use information_schema select count(*), status from innodb_metrics group by status; ...