Maison >interface Web >js tutoriel >4 conseils pour rédiger du code JS court et concis (Partager)
Comment rendre le code JS plus court ? L'article suivant partagera avec vous 4 conseils pour rédiger du code JS court et concis. J'espère que cela vous sera utile !
Les opérateurs logiques et (&&)
en Javascript peuvent provoquer un court-circuit, par exemple 与(&&)
可以产生短路,例如
console.log(true && 0 && 2); // 0 console.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
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' } } }C'est-à-dire que le code va de gauche à droite, si vous rencontrez
undefined, <code>null
, 0
, etc. seront convertis en valeurs de false
et ne le seront pas continuer à courir. const foo = () => { if(x<1){ return 'less than 1' } if(x>1){ return 'x is greater than 1' } return 'x is equal to 1' }
Supposons qu'il y ait un objet
rrreeeNous voulons faire quelque chose si le prénom existe, nous devons y aller couche par couche Vérifiez
rrreeeL'opérateur de jugement de chaîne s'arrêtera et retournera undéfini lorsqu'une valeur ne peut pas être obtenue à une certaine coucheDans ce cas, nous pouvons simplifier davantage le code grâce à la fusion de valeurs nulles🎜rrreee🎜 Un peu comme le ourrreee
Opérateur de fusion de valeurs nulles '??'
||
, mais ??
ne fonctionne que sur undefined
et null
, ce qui peut éviter les valeurs. C'est 0 problème🎜🎜🎜 Essayez d'éviter l'imbrication if else🎜🎜🎜Par exemple🎜rrreee🎜Vous pouvez rendre l'imbrication if else moins compliquée en supprimant la condition else, car l'instruction return arrêtera l'exécution du code et renverra la fonction🎜rrreee🎜🎜Bon Le code ne fonctionne pas doit être aussi court que possible. Parfois, un code trop rationalisé rendra le processus de débogage plus difficile, la lisibilité est donc la plus importante, en particulier dans le cas d'une collaboration à plusieurs personnes. 🎜🎜🎜Pour plus de connaissances sur la programmation, veuillez visiter : 🎜Introduction à la programmation🎜 ! ! 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!