javascript - jika menentukan sama ada untuk menggunakan pernyataan lain atau kembali untuk melaksanakan syarat lain
学习ing
学习ing 2017-06-12 09:31:02
0
6
1074
// 第一种
if (test) {
    console.log('Yes~');
} else {
    console.log('No~');
}

// 第二种
if (test) {
    console.log('Yes~');
    
    return;
}

console.log('No~');

Mana satu lebih baik? Yang kedua kelihatan lebih jelas, dengan kurang lekukan, tetapi satu watak lebih daripada yang pertama Dari segi prestasi, yang manakah lebih baik? ~

学习ing
学习ing

membalas semua(6)
女神的闺蜜爱上我

Yang pertama sangat hodoh dan bertele-tele. .
Kedua, secara amnya, pertimbangan harus dibuat seawal mungkin dalam fungsi supaya return boleh digunakan untuk keluar dari fungsi
, jadi kaedah kedua secara umumnya lebih baik.
Anda boleh menukarnya kepada yang berikut:

if (test) return console.log('Yes~')
console.log('No~')

if (test) console.log('Yes~')
else console.log('No~')

test?(console.log('Yes~')):(console.log('No~'))

Sudah tentu anda perlu menimbangnya dengan kebolehbacaan dan keanggunan ringkas, ini lebih kepada gaya peribadi.

学霸

Bagaimana jika ia berada di dalam fungsi?

学习ing

Ini bukan isu prestasi. Apabila anda mempunyai banyak syarat penghakiman, kelebihan jenis kedua sangat jelas, melainkan anda sanggup menulis banyak lagi
判断语句应尽早结束 Dalam situasi sebenar, ia biasanya berbilang syarat tidak layak + satu syarat yang layak.

if(满足不合格条件1) {
    return;
}
if(满足不合格条件2) {
    return;
}
//...
//满足合格条件
我想大声告诉你

Jenis kedua, jenis kedua, jenis kedua, kebolehbacaan yang baik
Jika dinilai tidak memenuhi syarat, kembalikan segera

Peter_Zhu

Saya secara peribadi suka yang kedua Apabila logiknya tamat, ia kembali secara langsung dan jelas dan teratur
Yang pertama adalah semudah itu, anda perlu membaca banyak kod untuk mencari yang dikembalikan hasil.

伊谢尔伦

Kaedah kedua, sedikit sebanyak, prosesnya lebih jelas (memberitahu anda apa yang boleh dilakukan dan apa yang tidak boleh dilakukan).
Tetapi lebih baik apabila anda tidak memerlukan jika...selain itu. Contohnya:

var ofn = {
    yes : function(){ console.log('yes'); },
    no : function(){ console.log('no'); },
};

var key = test ? "yes" : "no";

ofn[key]();
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan