javascript - Bagaimana untuk memahami isihan dalam susunan tatasusunan
PHPz
PHPz 2017-05-19 10:11:03
0
3
583
        var fruit=[7,10,32,6,9,4];
        document.write(fruit+'<br>');
        fruit.sort(sortFun);
        document.write(fruit);
        function sortFun(ar1,ar2){
            if(ar1>ar2){
                return 1;
            }else if(ar1<ar2){
                return -1;
            }else{
                return 0;
            }
        }

Bagaimana kod ini menyusun elemen tatasusunan? Tolong beri saya penjelasan terperinci Terima kasih

PHPz
PHPz

学习是最好的投资!

membalas semua(3)
巴扎黑

Untuk membantu anda memahami, anda boleh cuba memanggil kaedah isihan secara terus:

var fruit=[7,10,32,6,9,4];
fruit.sort();

Hasil yang dikembalikan ialah: [10, 32, 4, 6, 7, 9][10, 32, 4, 6, 7, 9]
而不是期待中的:[ 4, 6, 7, 9, 10, 32]

为什么会这样呢?
因为这是数组原型链上的sort()方法,即Array.prototype.sort()Daripada yang dijangkakan: [4, 6, 7, 9, 10, 32] kod>

Kenapa ini berlaku?
Kerana ini ialah kaedah sort() pada rantai prototaip tatasusunan, iaitu, Array.prototype.sort().

Cara mengkaji kaedah sort() ini secara mendalam:
1 Anda boleh pergi ke dokumen mdn https://developer.mozilla.org...
2 Anda boleh pergi ke "Javascript Advanced Programming", tetapi lanjutan design tak lengkap

3. Cara paling ganas baca spesifikasi ECMA2015: http://www.ecma-international...🎜4 Kalau betul-betul rasa pening kepala, boleh baca blog yang saya tulis tahun lepas dan ulangi 1,2, 3 langkah: http://www.jianshu.com/p/b50a...🎜Semoga ia dapat membantu anda...🎜
世界只因有你
 fruit.sort(sortFun);

sort 数组的排序方法;
 用法:
        var arr=[]; 
        arr.sort(function(a,b){
            
        })
        比如从小到大:
        var arr=[9,5,6]; 
        arr.sort(function(a,b){
            return a-b;
        })
        
       fruit.sort(sortFun);中的sortFun就相当于arr.sort(function(a,b){})
       中的function(a,b){};
       if(ar1>ar2){
                return 1;
            }else if(ar1<ar2){
                return -1;
            }else{
                return 0;
            }就相当于return a-b;
为情所困

Anda mungkin memerlukan artikel ini https://developer.mozilla.org...

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!