JavaScript基础函数的配置对象Configuration Objects(020)
配置对象通常用在API库的实现中,当程序中需要编写要多次的模块,也可以采用这种模式。这种模式的好处是接口明确,扩展方便。比如,一个 addPerson在设计的最初需要两个参数作为初始化时人的姓名:
function addPerson(first, last) {...}
随着程序的进一步扩展,这个函数需要的参数变多了:
function addPerson(first, last, dob, gender, address) {...}
这样,函数在执行时就需要按次序传入这些参数:
addPerson("Bruce", "Wayne", new Date(), null, null, "batman");
这并不太方便,而且也不直观:从调用函数的代码上看,那两个null不知道是用在哪个参数上的。如果可以只传一个配置对象作为参数:
addPerson(conf);
并在传参之前把配置对象设置好相应的值:
var conf = {username: "batman",first: "Bruce",last: "Wayne"
};addPerson(conf);
- 调用函数时不需要记得参数的次序
- 随意地忽略那么不想传递的参数
- 读写代码都更方便
- API的实现可以方便更改
转载于:https://www.cnblogs.com/Bryran/p/3976128.html
JavaScript基础函数的配置对象Configuration Objects(020)相关推荐
- JavaScript基础09-day11【原型对象、toString()、垃圾回收、数组、数组字面量、数组方法】
学习地址: 谷粒学院--尚硅谷 哔哩哔哩网站--尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通) JavaScript基础.高级学习笔记汇总表[尚硅谷最新版Ja ...
- JavaScript教程——函数(arguments 对象)
arguments 对象 定义 由于 JavaScript 允许函数有不定数目的参数,所以需要一种机制,可以在函数体内部读取所有参数.这就是arguments对象的由来. arguments对象包含了 ...
- JavaScript零基础入门 7:JavaScript基础函数
目录 一.时间函数Date 1.Date 2.创建一个指定的时间对象 3.getDate() 4.getDay() 5.getMonth() 6.getFullYear() 7.getTime() 8 ...
- javascript基础-函数
函数就是使用关键字 "function" 定义的一段具有独立作用域,能被反复执行的语句块,JavaScript函数大致包括普通函数.变量函数.构造函数.匿名函数.闭包函数以及ES6 ...
- JavaScript基础(四)对象、数组、对象与数组的常用API
目录 一.对象 1. 对象的创建 2. 对象属性的访问 3. 遍历对象属性 4. 检测属性是否存在 5. 对象的方法 二.数组对象 1. 数组的创建 2. 访问数组 3. 数组长度 4. 数组的遍历 ...
- JavaScript基础教程之数学对象
Write By Monkeyfly 以下内容均为原创,如需转载请注明出处. 数学对象(Math) 大纲: 数学对象简介 Math对象的属性 Math对象的方法 一.数学对象简介 Math对象与其他对 ...
- JavaScript基础_10(BOM对象1)
JavaScript中的BOM对象 浏览器对象模型–Browser ObjectModel (BOM) 一.Window 对象 1. 属性 (1)有三种方法能够确定浏览器窗口的尺寸(浏览器的视口,不包 ...
- 任务3-1(JavaScript基础)
web前端开发JavaScript基础 1.VScode配置: 2.JavaScript语法: 2.1 注释和console 2.2 三个容器关键字 2.3 数据类型 2.4 类型转换 2.5 数值运 ...
- JavaScript(基础、高级)笔记汇总表【尚硅谷JavaScript全套教程完整版】
目 录 前言 JavaScript(基础+高级)配套资料下载 JavaScript 基础 学习地址 学习笔记 day 05(P001-P006)[2016.11.22] day 06(P007-P ...
最新文章
- 大牛深入讲解!java从入门到项目实战
- C++ Primer 学习笔记_75_模板与泛型编程 --模板定义
- cocos2d-lua3.7组件篇(三)-http通信demo
- php 谷歌翻译api_武汉武昌区地质勘测翻译公司-译嘉合翻译
- 在RH6.5上安装sublime3 build3103步骤
- JSP页面报错:“Uncaught SyntaxError: Unexpected token ”
- kettle 插入更新 数据增量_kettle基于时间戳增量更新
- 153. php 引用
- 数据库表的建立与基本操作
- 橙色云再度入选中国科学院发布的《互联网周刊》
- bilibili封面提取
- 新闻——覃雄派、王会举、杜小勇、王珊论文两次入选“领跑者5000—中国精品科技期刊顶尖学术论文”
- 算法竞赛常用STL库
- PS实例之制作晶莹剔透气泡
- PAT-A1010解题报告
- Dubbo分布式事务处理--视频教程
- Linux 网络适配,ping命令,更改自己的IP地址
- mongodb-18.聚合查询练习1
- DeFi基本概念-开发人员必看
- Perl 批评的游乐园镜子