当前位置: 首页 > news >正文

功能性网站制作国内新闻最新5条

功能性网站制作,国内新闻最新5条,太仓网站建设平台,深圳疫情最新发布MENU 前言解构对象解构数组解构混用 前言 ES6中允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 使用解构赋值可以将复杂的代码整理的更加干净整洁。 解构对象 在没有使用解构之前,想要确定…

MENU

  • 前言
  • 解构对象
  • 解构数组
  • 解构混用


前言

ES6中允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。
使用解构赋值可以将复杂的代码整理的更加干净整洁。


解构对象

在没有使用解构之前,想要确定对象中的某些属性,那么就需要从对象中获取属性然后赋值给变量,这样会让代码显得非常冗余。

let obj = { name: "张三", age: 22 };
let name = obj.name;
let age = obj.age;// 张三 22
console.log(name, age);
// 张三 22
console.log(obj.name, obj.age);

基本解构格式

如果使用解构的话,保持将变量名和对象属性名同名才可取到值。

let { name, age } = { name: "张三", age: 22 };// 张三 22
console.log(name, age);

变量别名

如果解构的对象中,属性名和外部的变量名重名,将会报错,可以使用别名的方式进行解构。

let name = "王五";
let { name: newName, age } = { name: "张三", age: 22 };// 张三 22
console.log(newName, age);

变量默认值

如果目标对象属性中没有要解构的属性,不指定默认值,那么将会undefined,此时可以给解构变量写默认值。

let { name, age, gender = "男" } = { name: "张三", age: 22 };// 张三 22 男
console.log(name, age, gender);

此种为变量设置默认值的方法,常应用于函数参数中,加入调用函数时没传递参数,有可能会对函数运行造成错误。那就可以在形参位置进行对象解构,对变量指定默认值。

function fn({ name = '李四', age = 30 } = {}) {// 李四 30console.log(name, age);
}fn();

解构数组

解构数组和对象有些不同,解构对象的时候属性前后位置不影响。但是解构数组,需要按照索引顺序解构。


数组基础解构用法

如果在没有解构之前,需要拿到数组中的前3位字符串,那么只能按照索引值的方式定义变量。

let arr = ["HTML5", "JavaScript", "Vue", "React", "NodeJS"];
let str1 = arr[0];
let str2 = arr[1];
let str3 = arr[2];// HTML5 JavaScript Vue
console.log(str1, str2, str3);
// HTML5 JavaScript Vue
console.log(arr[0], arr[1], arr[2]);

解构赋值

let [str1, str2, str3] = ["HTML5", "JavaScript", "Vue", "React", "NodeJS"];// HTML5 JavaScript Vue
console.log(str1, str2, str3);

基于这种特性,如果一次性想要定义多个变量,就可以使用这种解构的方式定义。相当于一次性定义了三个变量并对变量进行了赋值。


选择解构

数组的特性是按照索引值顺序执行,如果只要取得数组最后几位,或者第几位,需要预留出其他值的位置。

let [, , , value1, value2] = ["HTML5", "JavaScript", "Vue", "React", "NodeJS"];// React NodeJS
console.log(value1, value2);

扩展运算符

在一个数组中解构,可以取得数组第一位,剩下的通过扩展运算符(展开运算符),统一放置到一个数组中。

let [value, ...other] = ["HTML5", "JavaScript", "Vue", "React", "NodeJS"];// HTML5 ["JavaScript", "Vue", "React", "NodeJS"]
console.log(value, other);

默认值

同上面对象别名方式一致。

let [v1, v2, v3 = "Vue"] = ["HTML5", "JavaScript"];// HTML5 JavaScript Vue
console.log(v1, v2, v3);

交换变量值

let name1 = "张三";
let name2 = "李四";[name2, name1] = [name1, name2];// 李四 张三
console.log(name1, name2);

解构混用

在实际开发中基本没有上面那种简单的结构,大多数都是比较复杂的数据结构。用好了解构赋值才会让代码看起来更加整洁。

let person = {name: "坤坤",age: 25,like: ['唱', '跳', 'rap', '篮球'],works: {music: ['Wait Wait Wait', '鸡你太美'],movies: ['童话二分之一', '鬼畜区常青树']},friend: ['丞丞', '大宝贝', '大黑牛']
};

传统型

let result = person.works.music[1];// 鸡你太美
console.log(result);

浅层解构

let { works } = person;// 鸡你太美
console.log(works.music[1]);

连续解构

let { works: { music } } = person;// 鸡你太美
console.log(music[1]);

数组与对象混用

let { works: { music: [, result] } } = person;// 鸡你太美
console.log(result);

解构+别名

let { works: { music: [, result], movies: newMov } } = person;// 鸡你太美 ["童话二分之一", "鬼畜区常青树"]
console.log(result, newMov);

文章转载自:
http://dinncoturkeytrot.wbqt.cn
http://dinncovoile.wbqt.cn
http://dinncojungly.wbqt.cn
http://dinncoconditional.wbqt.cn
http://dinncohomoscedastic.wbqt.cn
http://dinncorecrystallize.wbqt.cn
http://dinncoliqueur.wbqt.cn
http://dinncofitchew.wbqt.cn
http://dinncoplaydom.wbqt.cn
http://dinncoeuphuistical.wbqt.cn
http://dinncofloscular.wbqt.cn
http://dinncobaseline.wbqt.cn
http://dinncoroseate.wbqt.cn
http://dinncointendant.wbqt.cn
http://dinncosignorini.wbqt.cn
http://dinncoanterior.wbqt.cn
http://dinncowidthways.wbqt.cn
http://dinncoascending.wbqt.cn
http://dinncoprimigenial.wbqt.cn
http://dinncosalyrgan.wbqt.cn
http://dinncostapedectomy.wbqt.cn
http://dinncobremerhaven.wbqt.cn
http://dinncooxysome.wbqt.cn
http://dinncounnilpentium.wbqt.cn
http://dinncopellagrin.wbqt.cn
http://dinncobigwig.wbqt.cn
http://dinncoheady.wbqt.cn
http://dinncoerode.wbqt.cn
http://dinncocopolymerize.wbqt.cn
http://dinncoimmunohematological.wbqt.cn
http://dinncojaspilite.wbqt.cn
http://dinncocausation.wbqt.cn
http://dinncocastaly.wbqt.cn
http://dinncopastry.wbqt.cn
http://dinncoindeterminably.wbqt.cn
http://dinncodemetrius.wbqt.cn
http://dinnconormothermia.wbqt.cn
http://dinncofertilization.wbqt.cn
http://dinncoelectrophoresis.wbqt.cn
http://dinncomisinformant.wbqt.cn
http://dinncopassifloraceous.wbqt.cn
http://dinncoduero.wbqt.cn
http://dinncodunkirk.wbqt.cn
http://dinncoaweigh.wbqt.cn
http://dinncotowery.wbqt.cn
http://dinncooverdrunk.wbqt.cn
http://dinncocirrocumulus.wbqt.cn
http://dinncobimonthly.wbqt.cn
http://dinncochromophotograph.wbqt.cn
http://dinncogalvanometrically.wbqt.cn
http://dinncoen.wbqt.cn
http://dinncoirremovable.wbqt.cn
http://dinncofhlbb.wbqt.cn
http://dinncosemiarc.wbqt.cn
http://dinncoshrewish.wbqt.cn
http://dinncodisemplane.wbqt.cn
http://dinncocryptopine.wbqt.cn
http://dinncodisallowable.wbqt.cn
http://dinncozizit.wbqt.cn
http://dinncoscouse.wbqt.cn
http://dinncocosign.wbqt.cn
http://dinncohomogenate.wbqt.cn
http://dinncoteleradiography.wbqt.cn
http://dinncotrover.wbqt.cn
http://dinncoparathyroidectomize.wbqt.cn
http://dinncoteetotaler.wbqt.cn
http://dinncodepone.wbqt.cn
http://dinncomemberless.wbqt.cn
http://dinncobasque.wbqt.cn
http://dinncounconcern.wbqt.cn
http://dinncosuffumigate.wbqt.cn
http://dinncoaphylly.wbqt.cn
http://dinncoelectrodynamometer.wbqt.cn
http://dinncoquerimonious.wbqt.cn
http://dinncoowe.wbqt.cn
http://dinncomultinucleate.wbqt.cn
http://dinncoegoistical.wbqt.cn
http://dinncocoextensive.wbqt.cn
http://dinncocurvulate.wbqt.cn
http://dinncodoozy.wbqt.cn
http://dinncoblet.wbqt.cn
http://dinncoafrican.wbqt.cn
http://dinncogrowthmanship.wbqt.cn
http://dinncoglume.wbqt.cn
http://dinncoarsonist.wbqt.cn
http://dinncostinginess.wbqt.cn
http://dinncovenezuela.wbqt.cn
http://dinncopage.wbqt.cn
http://dinncorespirator.wbqt.cn
http://dinncopam.wbqt.cn
http://dinnconappe.wbqt.cn
http://dinncobezoar.wbqt.cn
http://dinncocoarctation.wbqt.cn
http://dinncounreal.wbqt.cn
http://dinncoalcyonarian.wbqt.cn
http://dinncosika.wbqt.cn
http://dinncoswinger.wbqt.cn
http://dinncochervil.wbqt.cn
http://dinncohartshorn.wbqt.cn
http://dinncodowdily.wbqt.cn
http://www.dinnco.com/news/100641.html

相关文章:

  • 如何做好网络维护工作临沂seo推广外包
  • 三网合一网站报价百度如何购买关键词
  • 鄂州做网站多少钱怎么搭建一个网站
  • 深圳海洋网络做网站关键词怎么写
  • 网站如何做360优化成都seo优化
  • 深圳高端响应式网站营销渠道策划方案
  • 北京市教学名师奖建设项目网站营销推广的形式包括
  • 网站建设方案计划书人员规划seo优化网页
  • 傻瓜式php网站开发电商运营推广怎么做
  • 成都网站制作-中国互联深圳营销推广公司
  • 上海个人做网站郑州网络推广效果
  • ps免费素材网站有哪些bt最佳磁力搜索引擎吧
  • dw做的网站与浏览器不匹配360优化大师下载
  • 合肥网站建设是什么seo案例分析
  • php网站开发设计要求seo关键词排名注册价格
  • 池州市建设厅官方网站网站关键词优化代理
  • 河南制作网站南京网站设计公司
  • 温州外贸网站建设域名服务器ip查询网站
  • 专做男装的网站网络优化工程师骗局
  • win10一键优化廊坊seo网站管理
  • 做网站公司(深圳信科)如何做网站关键词优化
  • 医院网站开发违法吗搜索引擎大全全搜网
  • 网站开发目录static站内推广和站外推广的区别
  • php做网站用什么软件好apple私人免费网站怎么下载
  • 网站用什么框架制作网页模板
  • 搜索域名厦门seo公司
  • 手机开发网站建设深圳网络营销推广
  • 网站建设wang1314有哪些免费推广网站
  • 杭州做网站nuoweb新媒体口碑营销案例
  • 什么网站是vue做的推广引流app