OurJS


OurJS-我们的JS, 我们的技术-IT文摘; 专注JS相关领域;
我们热爱编程, 我们热爱技术;我们是高大上, 有品味的码农;

欢迎您订阅我们的技术周刊


我们会向您分享我们精心收集整理的,最新的行业资讯,技术动态,外文翻译,热点文章;
我们使用第三方邮件列表向您推送,我们不保存您的任何个人资料,注重您的隐私,您可以随时退订,

欢迎分享您的观点,经验,技巧,心得

让我们一起找寻程序员的快乐,探索技术, 发现IT人生的乐趣;


本网站使用缓存技术每次加载仅需很小流量, 可在手机中流畅浏览;
如果您发现任何BUG,请即时告知我们: ourjs(at)ourjs.com

NodeJS动态传参特性:不定个数参数的省略,默认值与解构


分享到
分类 JS学习   关键字 Node.JS   发布 ourjs  1509950779523
注意 转载须保留原文链接,译文链接,作者译者等信息。  
Node.JS现在发展很快,几乎一年一个大版本。下面是关于ES6参数的一些新用法。

参数默认值

以前对于一些可以省略的参数,我们经常会用到下面的用法:

function doTask (who, options) {
  options = options || {}
}
现在 options = options || {} 可以省略了,可以写成

function doTask (who, options = {}) {

}

不定参数的省略

之前我们在给一个函数传不定个数的参数时,需要处理arguments ,并将其转化成Array对象

function assginTaskTo (taskInfo) {
  //除去第一个参数,将后面的参数变成数组users
  var users = Array.prototype.slice.call(arguments, 1)
  console.log(users)
}
调用和输出结果
assginTaskTo({ name: 'test' }, 'kris', 'Lee', 'Alice')
> [ 'kris', 'Lee', 'Alice' ]

现在可以写成这样的,users默认是array

function assginTaskTo (taskInfo, ...users) {
	console.log(users)
}

参数解构

在Javascript中普遍模式是将一个对象作为配置可选项,以前,这些选项得手工从对象中分解出来然后分配给相应变量。

function doTask (who, options) {
	options = options || ''

	var name = options.name
	var time = options.time
}
现在只需要一行即可:

function doTask (who, options = {}) {
	var { name, time } = options
}


社区评论 ( Beta版 )
OnceDoc 您自己的企业内容管理系统——文档、流程、知识库、报表、网盘All In One

访问404页面,寻找丢失儿童
 热门文章 - 分享最多
  1. WordPress、百度宣布停止使用React(Native)开源项目,Facebook开源专利许可潜在的法律风险
  2. 阿里涉嫌抄袭创业公司产品:在今天这个故事里,阿里巴巴就是四十大盗
  3. 从 Node 到 Go:一个粗略的比较—GO平均性能比JavaScript快十几倍
  4. 迫于社区压力:React(Native)16将更换成MIT开源协议
  5. Node.JS中如何快速扫描端口并发现局域网内的Web服务器地址(80)
  6. Node也许不是构建大型服务的最佳选择—Node之父Ryan Dahl访谈录
  7. GitHub2017年度开发者报告 JavaScript依然遥遥领先Python突飞猛进
  8. 垄断"开源硬件"树莓派芯片的供应商博通要收购高通了
  9. 招聘前端工程师
  10. 【干货】扫描识别控件Dynamic Web TWAIN在线示例汇总
  11. AirJD-简单好用的免费建站工具

 相关阅读 - JS学习
  1. 从 Node 到 Go:一个粗略的比较—GO平均性能比JavaScript快十几倍
  2. Node.JS中如何快速扫描端口并发现局域网内的Web服务器地址(80)
  3. Node.JS循环递归复制文件夹目录及其子文件夹下的所有文件
  4. 正则中test、exec、match的简单区别,以及括号的用法
  5. node.js使用unzip解压zip包指定文件,提取 word/excel (docx/pptx/xlsx) 文本内容
  6. Linux下用node.js提取Word(doc/docx)/PDF文本内容
  7. 用JavaScript获取当月第一天和最后一天
  8. Node.JSv8的5个新特性:支持string padding与async/await和object参数省略
  9. node.js中fs.stat里的atime,mtime,ctime,birthtime在debian下的更新规则与区别
  10. decodeURIComponent有个BUG,当浏览器请求地址含%+数字时,会解析错误

 关键字 - Node.JS
  1. Node.js框架之express
  2. 在nodejs中使用Redis缓存和查询数据及Session持久化(Express)
  3. Node.JS编码规范指南教程:教你优雅地写JavaScript代码
  4. Express入门教程:一个简单的博客
  5. NodeJS动态传参特性:不定个数参数的省略,默认值与解构
  6. Debug调试Node.JS:我们是如何定位内存泄漏和无限循环的
  7. 6款基于Node.JS的开源内容管理和静态网站生成系统
  8. Node.JS中如何判断递归嵌套的所有回调函数已经执行完毕,以读取目录下所有文件为例:计数比Promise方式快将近一倍
  9. Node.js网页抓取:一个最简单的http请求客户端示例(request client)
  10. 为什么你应该抛弃Express的视图渲染引擎

 欢迎订阅 - 技术周刊

我们热爱编程, 我们热爱技术; 我们是高端, 大气, 上档次, 有品味, 时刻需要和国际接轨的码农; 欢迎您订阅我们的技术周刊; 您只需要在右上角输入您的邮箱即可; 我们注重您的隐私,您可以随时退订.
加入我们吧! 让我们一起找寻码农的快乐,探索技术, 发现IT人生的乐趣;


 关注我们

我们的微信公众号: ourjs-com
打开微信扫一扫即可关注我们:
IT文摘-程序员(码农)技术周刊

ourjs官方微信号