Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Jak zavolat funkci v JS

Ahoj, jak se volá taková funkce? Díky

String.prototype.hashCode = function() {
    var hash = 0;
    if (this.length == 0) {
        return hash;
    }
    for (var i = 0; i < this.length; i++) {
        var char = this.charCodeAt(i);
        hash = ((hash<<5)-hash)+char;
        hash = hash & hash; // Convert to 32bit integer
    }
    return hash;
}
Předmět Autor Datum
Tam, odkud jsi to okopiroval, nemají příklad?
host 25.07.2022 17:06
host
Mají, ale proč bych ho hned použil, když se můžu doprošovat na fóru až mi někdo poradí. Prosím tě, n…
Marek70 25.07.2022 17:56
Marek70
Aha, takže já můžu za tvoji neschopnost? //edit: Přesně jak jsem si myslel: Kód jsi zřejmě ukradl o…
host 25.07.2022 18:37
host
Tak za první, mám to odtud, kde žádná ukázka jak to zavolat není. simple+hash+function+js Za druhé n…
Marek70 25.07.2022 19:01
Marek70
Tak i na té stránce je uvedený zdroj, takže bys tu informaci našel. Navíc se tam píše i to, že modif…
Wikan 25.07.2022 19:07
Wikan
Ano, podej na mě trestní oznámení, to bude nejlepší. Jak se říká tomu, když něco cituješ a neuvedeš… poslední
host 25.07.2022 19:11
host
"abc".hashCode();
Wikan 25.07.2022 17:08
Wikan
Díky moc.
Marek70 25.07.2022 17:58
Marek70
Než gizdiť proto, radšej by som z toho urobil obyčajnú funkciu: function hashCode(text) { var hash…
Ale 25.07.2022 17:49
Ale

Aha, takže já můžu za tvoji neschopnost?

//edit: Přesně jak jsem si myslel:
Kód jsi zřejmě ukradl odsud:
https://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript
Tam je taky odkaz na původní zdroj, z kterého čerpal:
https://werxltd.com/wp/2010/05/13/javascript-implementation-of-javas-string-hashcode-method/
A na té stránce autor překvapivě píše:
With this prototype you can simply call .hashCode() on any string, ie. “some string”.hashCode()
Takže to, co napsal později Wikan. :-D

Než gizdiť proto, radšej by som z toho urobil obyčajnú funkciu:


function hashCode(text) {
    var hash = 0;
    if (text.length == 0) {
        return hash;
    }
    for (var i = 0; i < text.length; i++) {
        var char = text.charCodeAt(i);
        hash = ((hash<<5)-hash)+char;
        hash = hash & hash; // Convert to 32bit integer
    }
    return hash;
}

používať proto má zmysel u vlastných typov či tried.

Zpět do poradny Odpovědět na původní otázku Nahoru