让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 相关文章推荐
详细介绍8款超实用JavaScript框架
Oct 25 Javascript
javascript跨浏览器的属性判断方法
Mar 16 Javascript
jQuery自动完成插件completer附源码下载
Jan 04 Javascript
VUEJS实战之构建基础并渲染出列表(1)
Jun 13 Javascript
Js动态设置rem来实现移动端字体的自适应代码
Oct 14 Javascript
vue监听滚动事件实现滚动监听
Apr 11 Javascript
微信小程序如何获知用户运行小程序的场景教程
May 17 Javascript
原生JS实现图片网格式渐显、渐隐效果
Jun 05 Javascript
jQuery实现获取及设置CSS样式操作详解
Sep 05 jQuery
详解Node.js使用token进行认证的简单示例
May 25 Javascript
vue vant中picker组件的使用
Nov 03 Javascript
详细聊聊浏览器是如何看闭包的
Nov 11 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
关于文本留言本的分页代码
2006/10/09 PHP
windows服务器中检测PHP SSL是否开启以及开启SSL的方法
2014/04/25 PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
2014/06/13 PHP
PHP7匿名类用法分析
2016/09/26 PHP
PHP单例模式实例分析【防继承,防克隆操作】
2019/05/22 PHP
javascript new 需不需要继续使用
2009/07/02 Javascript
jQuery EasyUI API 中文文档 - ComboGrid 组合表格
2011/10/13 Javascript
表单元素的submit()方法和onsubmit事件应用概述
2013/02/01 Javascript
JavaScript操作Cookie方法实例分析
2015/05/27 Javascript
基于Bootstrap使用jQuery实现简单可编辑表格
2016/05/04 Javascript
BootStrap Fileinput初始化时的一些参数
2016/12/30 Javascript
Bootstrap导航条鼠标悬停下拉菜单
2017/01/04 Javascript
用js制作淘宝放大镜效果
2020/10/28 Javascript
Vue服务端渲染和Vue浏览器端渲染的性能对比(实例PK )
2017/03/31 Javascript
JavaScript学习总结之正则的元字符和一些简单的应用
2017/06/30 Javascript
Vue中render函数的使用方法
2018/01/31 Javascript
微信小程序实现的日期午别医生排班表功能示例
2019/01/09 Javascript
vue tab切换,解决echartst图表宽度只有100px的问题
2020/07/19 Javascript
在Gnumeric下使用Python脚本操作表格的教程
2015/04/14 Python
Python的socket模块源码中的一些实现要点分析
2016/06/06 Python
使用python生成杨辉三角形的示例代码
2018/08/29 Python
Python闭包思想与用法浅析
2018/12/27 Python
Python 3.8新特征之asyncio REPL
2019/05/28 Python
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
2019/06/18 Python
Python检查图片是否损坏及图片类型是否正确过程详解
2019/09/30 Python
ITK 实现多张图像转成单个nii.gz或mha文件案例
2020/07/01 Python
详解用Python调用百度地图正/逆地理编码API
2020/07/02 Python
Python使用pycharm导入pymysql教程
2020/09/16 Python
python简单实现插入排序实例代码
2020/12/16 Python
详解HTML5中的元素与元素
2015/08/17 HTML / CSS
英国知名衬衫品牌美国网站:Charles Tyrwhitt美国
2016/08/28 全球购物
印度化妆品购物网站:Nykaa
2018/07/22 全球购物
供应链金融服务方案
2014/05/25 职场文书
2015年物业公司保洁工作总结
2015/10/22 职场文书
2016党校学习心得体会
2016/01/07 职场文书
Nebula Graph解决风控业务实践
2022/03/31 MySQL