Oldalak

2013. február 18., hétfő

Tömb rendezése magyar ábécé szerint

Ez egy példa, hogy hogyan lehet megvalósítani egyedi rendezést JavaScrip használatával.

A függvény, ami az egyéni rendezést megvaólsítja:
     function mSort(a, b) {
        
        if (a == b){
            return 0;
        }
        var huAbcLower = "aábcdeéfghiíjklmnoóöőpqrstuúüűvwxyz";
        var huAbcUpper = "AÁBCDEÉFGHIÍJKLMNOÓÖŐPQRSTUÚÜŰVWXYZ";
        
        len_abc = huAbcLower.length;
        len_a = a.length;
        len_b = b.length;
        var loc_a;
        var loc_b;
        
        for (var n = 0; n < len_a && n < len_b; ++n) {
            for (var k = 0; k < len_abc; ++k) {
                if (a.charAt(n) == huAbcLower.charAt(k) || a.charAt(n) == huAbcUpper.charAt(k)){
                    loc_a = k;
                }
                if (b.charAt(n) == huAbcLower.charAt(k) || b.charAt(n) == huAbcUpper.charAt(k)){
                    loc_b = k;
                }
            }
            if (loc_a > loc_b){
                return 1;
            }
            if (loc_a < loc_b){
                return -1;
            }
        }
        if (len_a > len_b){
            return 1;
        }
        if (len_a < len_b){
            return -1;
        }
        return 0;
    }

A használata pedig a következő képen néz ki:
   var arr = ["Körte", "barack", "alma"];
   
   arr.sort(mSort);

A sort függvény callback paraméterének az általunk létrehozott függvényt kell megadni paraméternek.

Nincsenek megjegyzések:

Megjegyzés küldése