摘要:对于来说,可以对参数类型进行简单的判断来进行识别,以达到省略中间参数的效果,比如。参数较多,部分可以省略的情况,建议使用参数对象。实现可选参数对象实现可选参数对象语法糖解构赋值
js参数对象实现可选参数和参数默认值
省略参数的前提是函数能识别你到底想传入的是哪一个参数,约定
1.可省略的参数后置
2.省略参数后不能与其它函数产生二义性 (js不存在这个问题)
程序要求你按参数定义的顺序传递参数进去。如果后面有没传的,就省略了。如果要省略中间的……对不起,自己传入 null 或 undefined。
对于 javascript 来说,可以对参数类型进行简单的判断来进行识别,以达到省略中间参数的效果,比如。
var set = function(name, date, age) { if (typeof date === "number") { age = date; date = undefined; } // .... }
这里是简单通过类型来识别的。更复杂一些的情况可以使用正则表达式来识别 domain, url, email 等,不过说起来就比较麻烦了,而且代码逻辑复杂,也不易写。
ES5实现可选参数对象参数较多,部分可以省略的情况,建议使用参数对象。
var CookieUtil = { set: function(args) { var name = args.name; var value = args.value; var expires = args.expires; var path = args.path; var domain = args.domain; var secure = args.secure; // ... } } CookieUtil.set({ name: "name", value: "Nicholas", path: "/books/projs/", domain: "www.wrox.com", expires: new Date("January 1, 2010") });ES6实现可选参数对象-语法糖解构赋值
function doSome({a,b=2,c}){ console.log(a,b,c) } doSome({a:5,c:22}) // 5 2 22
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/80919.html
摘要:数组转字符串定义方法用于把数组中的所有元素通过指定的分隔符进行分隔放入一个字符串,返回生成的字符串。该字符串由数组中的每个元素的返回值经调用方法连接由逗号隔开组成。 showImg(http://ww1.sinaimg.cn/large/005Y4rCogy1frtrbx8b69j30n20cyh3q.jpg); 前言 在开发中,数组的使用场景非常多,平日中也涉及到很多数组的api/相...
摘要:别急还没说完我们使用操作符构造了类的一个实例,这会调用类的构造函数,按照定义对实例进行初始化注意为了兼容和,中的类会被编译为中的函数。 前言: 我们为需要构建和维护大型JavaScript程序的团队设计了TypeScript,以满足他们的需求。TypeScript可帮助他们在软件组件之间定义接口,并且帮助理解现存JavaScript库的行为。同时,使用TypeScript的团队可以将代...
阅读 533·2023-04-26 01:39
阅读 4485·2021-11-16 11:45
阅读 2609·2021-09-27 13:37
阅读 882·2021-09-01 10:50
阅读 3578·2021-08-16 10:50
阅读 2217·2019-08-30 15:55
阅读 2979·2019-08-30 15:55
阅读 2259·2019-08-30 14:07