有哪些编写短小精炼的JS代码小技巧
发表于:2025-02-06 作者:千家信息网编辑
千家信息网最后更新 2025年02月06日,本篇内容主要讲解"有哪些编写短小精炼的JS代码小技巧",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"有哪些编写短小精炼的JS代码小技巧"吧!短路Javasc
千家信息网最后更新 2025年02月06日有哪些编写短小精炼的JS代码小技巧
本篇内容主要讲解"有哪些编写短小精炼的JS代码小技巧",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"有哪些编写短小精炼的JS代码小技巧"吧!
短路
Javascript 里的逻辑运算符与(&&)
可以产生短路,例如
console.log(true && 0 && 2); // 0console.log(true && 'test' && 2) // 2
即代码从左往右,如果遇到undefined
,null
,0
等等会被转化为false
的值时就不再继续运行。
x == 0 && foo()// 等价于if( x == 0 ){ foo()}
链判断运算符 '?'
假设有一个对象
const student = { name : { firstName : 'Joe' }}
我们希望firstname存在的情况下做一些事情, 我们不得不一层一层检查
if(student && student.name && student.name.firstName){ console.log('student First name exists')}
采用链判断运算符会在某一层取不到值的时候停止并返回undefined
if(student?.name?.firstName){ console.log('student First name exists')}
空值合并运算符 '??'
我们有时候会使用三元运算来简化if...else...
或者返回一个默认值
const foo = () => { return student.name?.firstName ? student.name.firstName : 'firstName do not exist'}console.log(foo())
这种情况,我们可以通过空值合并进一步简化代码
const foo = () => { return student.name?.firstName ?? 'firstName do not exist'}console.log(foo())
很像或||
运算符,但??
只对undefined
和 null
起作用,可以避免值是0麻烦
尽量避免if else 嵌套
例如
const foo = () => { if(x<1) { return 'x is less than 1' } else { if(x > 1){ return 'x is greater than 1' } else { return 'x is equal to 1' } }}
通过删除 else 条件可以使 if else 嵌套变得不那么复杂,因为 return 语句将停止代码执行并返回函数
const foo = () => { if(x<1){ return 'less than 1' } if(x>1){ return 'x is greater than 1' } return 'x is equal to 1'}
好的代码不一定要追求尽可能的短,有时候过于精简的代码会使debug的过程更加麻烦,所以可读性才是最重要的,特别是在多人协作的情况下。
到此,相信大家对"有哪些编写短小精炼的JS代码小技巧"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
代码
运算
运算符
技巧
情况
内容
有时候
麻烦
学习
复杂
实用
更深
重要
事情
作用
兴趣
函数
可以使
可以通过
可读性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国长沙网络安全 智能制造
北京浪潮服务器租用
数据库某一列数据
2012服务器管理器进不去
滨州采购软件开发咨询
见微数据库官网
教室管理数据库
世界各国对网络安全做出的行动
广州网络安全学习
酒店里的网络安全不
网狐6603数据库
免费sql服务器
教育局长解读网络安全
扬州网络安全资质申请
网络安全毕业答辩问题大全
mysql数据库不见了
软件开发测试集成简历模板
无锡便携式工控机服务器
服务器系统7.5
五粮液扫码服务器繁忙
运满满网络安全审查是什么
银行基本数据库查询
襄阳市网络安全视频
数据库说明 安全设计
《网络安全法》系列解读之
网络技术创新市场
软件开发如何开展工作计划
软件开发工资一万左右
dell服务器虚拟化集群
列举网络安全案例