本文主要是介绍js 代碼簡寫,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
為了能夠寫出更優化並且也能看懂別人寫的代碼,這此文章整理今後看到的簡寫代碼!!
1 短路评价
在 javascript 裡只要是 0、""、null、false、undefined、NaN 都會被判定為 false
用 || 來簡化程式碼
var student=name||'小明';
/*等同於*/
if(name){student=name
}else{student='小明';
}
/*---------------------------------------------*/if (!obj) {
call_function();
}if (obj2) {
call_function();
}
/*等同於: || 只要第一個是 false 就會繼續做下一個 */
(obj || call_function());
(!obj2 || call_function());
用 && 來簡化程式碼
var a = 1;
if (a == 1) {
alert("a=1");
}
/*等同於: a == 1 為 false,那下面 alert 就不會做了*/
a == 1 && alert("a=1")
||跟&&複雜的寫法
var a = 3, b;if (a == 3) {b = 1;}else if (a == 5) {b = 2;}else {b = 3 ;}/*等同於*/b = a == 3 && 1 || a == 5 && 2 || 3
var add_level = {'5': 1,'10': 2,'12': 3,'15': 4
}[add_step] || 0;
/*等同於*/
var add_level = (add_step > 12 && 4) || (add_step>10 && 3) || (add_step>5 && 2) || (add_step>0 && 1) || 0;
if的簡寫
if(a === b) { return "a and b are equal"; } else if(a > b) { return "a is greater"; } else { return "b is greater "; } /*等同於*/
var display = (a === b) ? "a and b are equal" : (a > b) ? "a is greater" : "b is greater";
这篇关于js 代碼簡寫的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!