范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

一道关于解构赋值和参数默认值的编程题

  在前端俱乐部QQ群中,有朋友发出这样的题目,说最近面试中遇到了,如下所示 function fun( ? ) {     return {a,b} } console.log(fun( )) // {a:1,b:2} console.log(fun({a:3})) // {a:3,b:456} console.log(fun({})) // {a:123,b:456}
  问,fun 的参数应该填什么?
  提示:利用结构赋值和参数默认值
  经过我一番测试,其结果如下所示: function fun({ a = 123, b = 456 } = { a: 1, b: 2 }) {   return { a, b } }解题思路
  先看第一个执行:  console.log(fun( )) // {a:1,b:2}
  fun()   不传参数,直接执行,结果 a 为 1,b 为 2。说明默认值为 a : 1,b : 2。
  可以得出 function fun(a = 1, b = 2) {   return { a, b } }
  再看第二个执行: console.log(fun({a:3})) // {a:3,b:456}
  fun({a: 3})   ,参数传入一个对象,对象中 a 为 3,其结果 a 为 3,b 为 456。说明其参数默认值为一个对象,对象中的值又有默认参数 a 与 b。
  结合"执行 1",如果不传参数,默认用  a = 1, b = 2   的选项;如果传入参数;则用对象中的默认参数。即 function fun({ a = XX, b = 456 } = { a: 1, b: 2 }) {   return { a, b } }
  最后看第三个执行: console.log(fun({})) // {a:123,b:456}
  很明显,我们还不知道对象中的默认 a 代表什么。第三个执行告诉我们它为 123
  所以最后我们的答案是 function fun({ a = 123, b = 456 } = { a: 1, b: 2 }) {   return { a, b } }难点
  在做这道题的时候,我被赋值的  =   和  :   迷惑了。这里做笔记记录 :   针对对象赋值 =   为默认值
  如图所示: const obj = {   a: 1,   b: 2,   c: 3,   d: 4, } const { a, b } = obj // 解构赋值 a,b, a为1,b为2 const { a = 11, b = 21, e = 51 } = obj // 给解构赋值的 设置默认值,a为1,b为2,e为51,得默认值是当你对象中没有值时,赋予该变量的默认值
  =   赋予变量默认值
  那么  :   何处使用, 当解构赋值中的值为一个对象的时,设置对象中的值就用 :  const obj = {   a: {     aa: 11,     bb: 22,   },   b: 2,   c: 3,   d: 4, } const { a, b } = obj // a={aa: 11, bb: 22} b=2 const { a = { aa: 111, bb: 222 }, b = 22, e = { aa: 111, bb: 222 } } = obj // a={aa: 11, bb: 22},b = 22, e={aa: 111, bb: 222}
  这里我们要注意:当解构的值在对象中,即使设置默认值,还是会以值为准;如果解构的值不在对象中,则会以默认值的形式出现在结果值中。 回头看题function fun( ? ) {     return {a,b} } console.log(fun( )) // {a:1,b:2} console.log(fun({a:3})) // {a:3,b:456} console.log(fun({})) // {a:123,b:456}
  为什么 a = 123, b = 456 要用等于号 =  ,而不是用冒号 :  呢,因为它原本是"键",只能赋予默认值而不能将键重命名 总结
  解构赋值时,冒号 :   是重命名,等于号 =   是赋值默认值

94事件的由来94事件的由来本圈很多新人还不知道94是什么。2017年9月4日是中国某圈最低落的一天,是历史性事件。央行网信办工信部工商总局银监会证监会保监会等七部门联合发文关于防范以虚拟货币区HIV病毒体外存活时间是多长,有哪些危险性呢?艾滋病毒(HIV)可以在体外存活,但相对于其他病毒来说。HIV在体外存活的能力较弱。总的来说,HIV在体外只能存活几分钟,而且还有几个条件温度越低HIV存活时间越长,在室温的条件下如果我花一百万买了一个币的1000倍合约杠杆,然后那个币涨了一千倍,平台会给我提我的一万亿吗?看了这回答,都是些小白,就拿比特币来说,100万1000倍,相当于价值10亿的比特币差不多300400个,请问有这么多对手盘给你开?如果能涨到1000倍,只要你能开的出来,平得掉,工业互联网平台数字仿真发展白皮书当前,全球新一轮科技革命和产业变革深入推进,数字仿真软件作为工业软件皇冠上的明珠,加速与大数据人工智能区块链等新一代信息技术融合,在数字空间对物理世界运行规律进行全方位高精度模拟,安兔兔8月性价比排行小米包揽三项冠军,高端路上不忘初心安兔兔发布8月份安卓手机性价比排行,小米旗下产品包揽大多数价位段冠军,走向高端道路上不忘性价比初心,贯彻性价比和友商无关名言。20002999元价位段RedmiK30S至尊纪念版至非洲大陆首富丹格特,垄断非洲炼油水泥,到底有多少财富?我们熟悉富豪有马化腾马云李嘉诚,美国的马斯克贝索斯,一个世纪以前的洛克菲勒,甚至是在印度一个人住一栋大厦的印度首富穆克什安巴尼,但是你听说过非洲首富是谁吗?今天我们将看到非洲最富有项目来了石墨烯和铜联姻,深圳团队研发高铁超级充电线读创深圳商报记者袁斯茹飞驰的高铁上,目之所及是车内舒适的环境和窗外快速掠过的景色,却很少有人关注到列车上方的接触网导线,而这个接触网却肩负重要职责为高铁提供电能。如今我国高铁正向时发生了什么?核心技术人才离职后,中芯国际董事长也辞职了本文原创,禁止搬运和抄袭,违者必究!中芯国际是中国大陆最先进的芯片制造商,和台积电相比,在同类制程工艺领域,都能一较高下。但是中芯国际也接连发生了许多事情,在一位核心技术人才离职后为什么我们的手机会随着使用时间的增长而变得越来越卡?手机已经成为我们生活中的一大帮手,越来越多的人在出行中离不开手机,很多人因为使用手机的时间较长,被人们称作为低头族或者是手机奴,但是现如今我们在使用手机时,会发现我们的手机随着使用社区团购又传新消息!橙心确定卖身,京东和字节二选一橙心优选线下门店自7月以来,社区团购领域频传变局,橙心优选裁撤总部,此前有传言,橙心优选一直和各大互联网巨头接洽并购事宜,目前与京东的谈判已经进展到后期。今天,海豚智库得到独家消息一分钟资讯华为VIVO荣耀iQOO苹果小米等,最新消息哈喽,我是毛小毛。关注我,每日带你了解最新数码资讯!一分钟资讯第126期,感谢你的阅读。华为vivo并列高端机第二近日,来自第三方调研机构Counterpoint的数据显示,今年7
一段别人写的Android全局捕获异常已经上线的App,如果遇到异常就崩溃闪退,给用户的体验就会很不友好。为了不崩溃,于是就会有全局捕获异常的做法。最近看到如下代码Overrideprotectedvoidattach腾讯微信蚂蚁集团相继收紧数字藏品平台的规则灰色地带进一步被压缩财联社区块链日报(北京,记者董宇佳)讯,近期,蚂蚁集团和腾讯都收紧了对数字藏品平台的规定。鲸探提高了对于违规行为用户的处罚上限,而腾讯微信在近期下架了多个数字藏品平台小程序,并关闭HiFi音质感受音乐律动魔浪HiFiPods一圈两铁降噪耳机HiFi音质感受音乐律动魔浪HiFiPods一圈两铁降噪耳机如今TWS耳机不少,但能打出HiFi音质的没几个,由于传输速度限制,大部分TWS耳机都是听个响的水平,而带HiFi的耳机新能源大发展催生巨大储能市场国家能源局印发大力发展风电光伏。加大力度规划建设以大型风光基地为基础以其周边清洁高效先进节能的煤电为支撑以稳定安全可靠的特高压输变电线路为载体的新能源供给消纳体系。优化近海风电布局金融科技十大技术趋势发布!腾讯云副总裁胡利明未来金融2。0服务实体经济方向是基础建设服务升级渠道升级每经记者潘婷每经编辑陈星近年来,云计算区块链人工智能等技术的稳步发展,为金融行业创新注入新活力。然而,金融机构借助金融科技进行数字化转型的水平不一。今年初,中国人民银行发布金融科技格灵深瞳董秘回复未来,公司将继续加大人工智能领域的技术研发投入格灵深瞳(688207)03月30日在投资者关系平台上答复了投资者关心的问题。投资者请问怎么举报公司虚高二级市场发行价?格灵深瞳董秘尊敬的投资人,您好!公司将持续加强与资本市场沟通天九集团为中小企业创新发展保驾护航近日,腾讯发布全年业绩报告,2021年腾讯实现营收5601。18亿元,同比增长16,净利润1237。88亿元,同比微增1,这是近十年来腾讯净利增幅最低的一年。腾讯业绩呈现平稳的背后新国都助力数字经济发展,积极布局数字人民币深圳2022年3月29日美通社随着国家十四五规划和2035年远景目标纲要的正式颁布,规划明确要打造数字经济新优势,将数字经济发展和数字化转型的目标与作用提高到了国民经济的高度,支付2022超高性价比耳机推荐倍思M2,高颜值高性能,你值得拥有哈喽大家好我是伟华,我们生活在一个快节奏的城市里,每天有很多一部分时间都是在坐公交或是挤地铁了。在通勤的路上听听音乐可能也算是生活的一种习惯了,所以蓝牙耳机是我一直必备的数码产品。晶华微科创板IPO研发投入比低于同行,称部分产品较竞争对手拥有技术优势每经记者朱成祥每经编辑陈俊杰3月9日,杭州晶华微电子股份有限公司(以下简称晶华微)科创板首发申请获得上交所科创板上市委审议通过。晶华微主要通过从事高性能模拟及数模混合集成电路的研发Java中常用的加密方式(附多个工具类)一Java常用加密方式Base64加密算法(编码方式)MD5加密(消息摘要算法,验证信息完整性)对称加密算法非对称加密算法数字签名算法数字证书二分类按加密算法是否需要key被分为两