让JavaScript代码更加精简的方法技巧


Posted in Javascript onJune 01, 2022

前言:

使用 JavaScript 对象解构来节省代码,JavaScript 对象解构赋值在项目开发中是一个常用的技能。

先来看一个 article 对象,有两个属性 title 和 description

const article = {
    title: "JavaScript对象解构赋值",
    description:
        "解构是一个概念,分解其中一种数据类型并将其单独的属性分配给变量",
};

在 ES6 之前,需要将对象的属性赋值给变量时,通常是这样做:

const title = article.title;
const description = article.description

但是 ES6 引入了对象解构语法,它提供了另一种将对象属性赋值给变量的方法:

const { title, description: desc } = article;
console.log(title); // JavaScript对象解构赋值
console.log(desc); //  解构是一个概念,分解其中一种数据类型并将其单独的属性分配给变量

上述代码将属性 title 和 description 属性赋值给变量 title 和 desc 。

语法说明: 冒号 (:) 之前的标识符是对象的属性,冒号之后的标识符是新定义的变量。

对象解构示例 {}

解构空对象

使用 OR 运算符 || 为空对象定义默认值,在对象为 null 的情况下定义一个默认值空对象 {} 。

function getArticle() {
    return null;
}
const { title, description } = getArticle() || {};

// 错误的情况
const { title, description } = getArticle() ;

嵌套对象解构

直接看下面代码:

const article = {
    id: 1001,
    detail: {
        title: "JavaScript对象解构赋值",
        description:
            "解构是一个概念,分解其中一种数据类型并将其单独的属性分配给变量",
    },
};
const {
    detail: { title, description },
    detail,
} = article;
console.log(title); // JavaScript对象解构赋值
console.log(description); // 解构是一个概念,分解其中一种数据类型并将其单独的属性分配给变量
console.log(detail); // { title: 'JavaScript对象解构赋值', description: '解构是一个概念,分解其中一种数据类型并将其单独的属性分配给变量' }

注意:对象解构默认将对象的属性分配给具有相同名称的变量。

到此这篇关于 让JavaScript代码更加精简的方法技巧的文章就介绍到这了,更多相关JS精简代码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
贴一个在Mozilla中常用的Javascript代码
Jan 09 Javascript
jquery 模板的应用示例
Nov 12 Javascript
基于jquery扩展漂亮的下拉框可以二次修改
Nov 19 Javascript
JavaScript高级教程5.6之基本包装类型(详细)
Nov 23 Javascript
AngularJS 最常用的功能汇总
Feb 17 Javascript
深入理解setTimeout函数和setInterval函数
May 20 Javascript
jQuery基础的工厂函数以及定时器的经典实例分析
May 20 Javascript
详解vue+vueRouter+webpack的简单实例
Jun 17 Javascript
最通俗易懂的javascript变量提升详解
Aug 05 Javascript
详解vue引入子组件方法
Feb 12 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
Apr 01 Javascript
VUE实现密码验证与提示功能
Oct 18 Javascript
cypress测试本地web应用
Jun 01 #Javascript
vue实现登陆页面开发实践
May 30 #Vue.js
Echarts如何重新渲染实例详解
May 30 #Javascript
vue router 动态路由清除方式
May 25 #Vue.js
vue如何清除浏览器历史栈
May 25 #Vue.js
ant design charts 获取后端接口数据展示
May 25 #Javascript
vue3不同环境下实现配置代理
May 25 #Vue.js
You might like
队列在编程中的实际应用(php)
2010/09/04 PHP
php执行多个存储过程的方法【基于thinkPHP】
2016/11/08 PHP
PHP的反射机制实例详解
2017/03/29 PHP
ThinkPHP中调用PHPExcel的实现代码
2017/04/08 PHP
基于PHP的登录和注册的功能的实现
2020/08/06 PHP
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
jquery 实现二级/三级/多级联动菜单的思路及代码
2013/04/08 Javascript
javascript中new关键字详解
2015/12/14 Javascript
浅谈Angularjs link和compile的使用区别
2016/10/21 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
2017/03/01 Javascript
详解用vue编写弹出框组件
2017/07/04 Javascript
快速解决处理后台返回json数据格式的问题
2018/08/07 Javascript
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
初探Vue3.0 中的一大亮点Proxy的使用
2018/12/06 Javascript
vue webpack打包后图片路径错误的完美解决方法
2018/12/07 Javascript
JavaScript作用域链实例详解
2019/01/21 Javascript
jQuery实现的网站banner图片无缝轮播效果完整实例
2019/01/28 jQuery
了解前端理论:rscss和rsjs
2019/05/23 Javascript
[02:05]2014DOTA2西雅图邀请赛 老队长全明星大猜想谁不服就按进显示器
2014/07/08 DOTA
利用Python暴力破解zip文件口令的方法详解
2017/12/21 Python
教你利用Python玩转histogram直方图的五种方法
2018/07/30 Python
pycharm实现print输出保存到txt文件
2020/06/01 Python
python 利用openpyxl读取Excel表格中指定的行或列教程
2021/02/06 Python
使用css3绘制出各种几何图形
2016/08/17 HTML / CSS
css 省略号 css3让多余的字符串消失并附加省略号的实现代码
2013/02/07 HTML / CSS
H5离线存储Manifest原理及使用
2020/04/28 HTML / CSS
护理专业自荐信
2013/12/03 职场文书
贷款承诺书范文
2014/05/19 职场文书
乔丹名人堂演讲稿
2014/05/24 职场文书
死亡证明书样本说明
2014/10/18 职场文书
海南召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
2014年城管个人工作总结
2014/12/08 职场文书
毕业典礼邀请函
2015/01/31 职场文书
Idea连接MySQL数据库出现中文乱码的问题
2021/04/14 MySQL
实例讲解Python中sys.argv[]的用法
2021/06/03 Python
Python机器学习之决策树和随机森林
2021/07/15 Javascript