深入理解 ES6 的解构表达式

这篇具有很好参考价值的文章主要介绍了深入理解 ES6 的解构表达式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信(gis-dajianshi),一起交流。

深入理解 ES6 的解构表达式,# Javascript理论与实践,es6,结构表达式,大剑师

No. 内容链接
1 Openlayers 【入门教程】 - 【源代码+示例300+】
2 Leaflet 【入门教程】 - 【源代码+图文示例 150+】
3 Cesium 【入门教程】 - 【源代码+图文示例200+】
4 MapboxGL【入门教程】 - 【源代码+图文示例150+】
5 前端就业宝典 【面试题+详细答案 1000+】

深入理解 ES6 的解构表达式,# Javascript理论与实践,es6,结构表达式,大剑师


深入理解 ES6 的解构表达式,# Javascript理论与实践,es6,结构表达式,大剑师

ES6 的解构赋值(Destructuring Assignment)是一种新的声明和提取数组或对象属性的简洁方式,它允许我们从数组或对象中提取值并将这些值赋给相应的变量。这种方式简化了变量赋值和参数传递的过程,提高了代码的可读性和便利性。文章来源地址https://www.toymoban.com/news/detail-849577.html

一、 数组解构赋值

示例代码:
// 从数组中解构赋值
let [a, b, c] = [1, 2, 3];
console.log(a, b, c); // 输出:1 2 3

// 默认值
let [x = 'default', y = 'fallback'] = [1];
console.log(x, y); // 输出:1 fallback

// 解构剩余部分
let [first, ...rest] = [1, 2, 3, 4, 5];
console.log(first); // 输出:1
console.log(rest); // 输出:[2, 3, 4, 5]

// 解构嵌套数组
let [head, [nested1, nested2]] = [1, [2, 3]];
console.log(head, nested1, nested2); // 输出:1 2 3

二、对象解构赋值

示例代码:
// 从对象中解构赋值
let { firstName: fn, lastName: ln } = { firstName: 'Alice', lastName: 'Smith' };
console.log(fn, ln); // 输出:Alice Smith

// 如果对象没有该属性,可以通过默认值赋值
let { color = 'red' } = {};
console.log(color); // 输出:red

// 直接解构赋值给同名变量
let { firstName, lastName } = { firstName: 'Bob', lastName: 'Johnson' };
console.log(firstName, lastName); // 输出:Bob Johnson

// 解构嵌套对象
let obj = { profile: { name: 'Tom', age: 25 } };
let { profile: { name, age } } = obj;
console.log(name, age); // 输出:Tom 25

// 非必须存在的属性,可以放在单独的圆括号中
let { a, b, c } = { a: 1, b: 2 };
({ c } = { c: 3 }); // 不报错,即使c不在原始对象中
console.log(a, b, c); // 输出:1 2 3

三、应用场景

  • 交换两个变量的值无需临时变量:
let x = 1, y = 2;
[x, y] = [y, x];
console.log(x, y); // 输出:2 1
  • 函数参数的简化:
function processOptions({ width = 800, height = 600, title }) {
  // ...
}
processOptions({ title: 'My App', height: 400 });
  • 函数返回多个值时的便捷处理:
function fetchInfo() {
  return [1, 2, 3];
}

let [info1, info2, info3] = fetchInfo();
  • 处理 JSON 数据或 API 回调:
let jsonData = { id: 1, name: 'John Doe' };
let { id, name } = jsonData;
console.log(id, name); // 输出:1 John Doe

到了这里,关于深入理解 ES6 的解构表达式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 深入理解Spring EL表达式的高级功能

    欢迎来到我的博客,代码的世界里,每一行都是一个故事 EL表达式不仅仅局限于基础用法,它还提供了丰富的高级功能。在这篇博客中,我们将揭开这些功能的神秘面纱,让你成为EL表达式的真正大师。 在EL(Expression Language)表达式中,可以使用各种操作符和语法来操作集合

    2024年01月25日
    浏览(42)
  • 深入理解 Java 多线程、Lambda 表达式及线程安全最佳实践

    线程使程序能够通过同时执行多个任务而更有效地运行。 线程可用于在不中断主程序的情况下在后台执行复杂的任务。 创建线程 有两种创建线程的方式。 扩展Thread类 可以通过扩展Thread类并覆盖其run()方法来创建线程: 实现Runnable接口 另一种创建线程的方式是实现Runnable接口

    2024年03月15日
    浏览(54)
  • LangChain 67 深入理解LangChain 表达式语言30 调用tools搜索引擎 LangChain Expression Language (LCEL)

    LangChain系列文章 LangChain 50 深入理解LangChain 表达式语言十三 自定义pipeline函数 LangChain Expression Language (LCEL) LangChain 51 深入理解LangChain 表达式语言十四 自动修复配置RunnableConfig LangChain Expression Language (LCEL) LangChain 52 深入理解LangChain 表达式语言十五 Bind runtime args绑定运行时参数

    2024年01月23日
    浏览(72)
  • JavaScript全解析——ES6函数中参数的默认值和解构赋值

    本文为千锋资深前端教学老师带来的【JavaScript全解析】系列,文章内含丰富的代码案例及配图,从0到1讲解JavaScript相关知识点,致力于教会每一个人学会JS! 文末有本文重点总结,可以收藏慢慢看~ 更多技术类内容,主页关注一波! 给函数的形参设置一个默认值, 当你没有传

    2024年02月05日
    浏览(39)
  • 【JavaScript】正则表达式

    正则表达式用于对字符串模式匹配及检索替换 修饰符 描述 i 执行对大小写不敏感的匹配。 g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 m 执行多行匹配。 表达式 描述 [abc] 查找方括号之间的任何字符。 [^abc] 查找任何不在方括号之间的字符。 [0-9] 查找任

    2024年01月21日
    浏览(55)
  • JavaScript使用正则表达式

    正则表达式(RegExp)也称规则表达式(regular expression),是非常强大的字符串操作工具,语法格式为一组特殊字符构成的匹配模式,用来匹配字符串。ECMAScript 3以Perl为基础规范JavaScript正则表达式,实现Perl 5正则表达式的子集。JavaScript通过内置RegExp类型支持正则表达式,String和Re

    2024年02月05日
    浏览(65)
  • JavaScript正则表达式基础

    创建正则表达式,一般有两种写法 .test(\\\'需要验证的字符\\\'),正则的方法用来验证正则的匹配结果true or false 修饰符 写法:/正则/ 修饰符 示例:/abc/i (匹配字符串abc并且不区分大小) i:执行对大小写不敏感的匹配(不区分字母的大小写) g:执行全局匹配(查找所有匹配而非在

    2024年02月09日
    浏览(49)
  • JavaScript中的正则表达式

    正则表达式是一种强大的工具,可以在多种编程语言中使用,包括JavaScript。它们允许您在文本中查找和匹配模式,以及执行各种操作,如替换、拆分和验证。在JavaScript中,正则表达式通常用来检查字符串是否符合某种特定模式,并且可以用来从字符串中提取特定的子字符串

    2024年02月02日
    浏览(41)
  • javaScript基础语法之正则表达式

    表达式 描述 [0-9] 查找任何从 0 至 9 的数字。例如,匹配: \\\'111\\\' ,不匹配:\\\'eee\\\' [abc] 查找方括号之间的任何字符。例如,/[123]/ 匹配 \\\"1234567\\\" 中的 \\\"123\\\",\\\"1\\\" 中的 \\\"1\\\"。但是不匹配 \\\"4567890\\\"。 [^abc] 查找任何不在方括号之间的字符。例如,/[^123]/ 匹配 \\\"4567890\\\" 中的 \\\"4567890\\\"。但是不匹

    2024年02月09日
    浏览(48)
  • JavaScript |(四)正则表达式 | 尚硅谷JavaScript基础&实战

    学习来源 :尚硅谷JavaScript基础实战丨JS入门到精通全套完整版 系列笔记 : JavaScript |(一)JavaScript简介及基本语法 JavaScript |(二)JavaScript自定义对象及函数 JavaScript |(三)内建对象 | 数组 | string对象 JavaScript |(四)正则表达式👇 JavaScript |(五)DOM简介 JavaScript |(六)

    2024年02月14日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包