Konvertierung der Array-Methoden von JavaScript in AutoHotkey
AutoHotkey verfügt nicht über integrierte Iterationshilfsmethoden (ab 1.1.33), um viele der in anderen Sprachen üblichen Array-Verhaltensweisen auszuführen.
Portierte Methoden
- concat
- every
- fill
- filter
- find
- findIndex
- forEach
- includes
- indexOf
- join
- lastIndexOf
- map
- reduce
- reduceRight
- reverse
- shift
- slice
- some
- sort
- splice
- toString
- unshift
- values
Installation
Code: Select all
#Include array.ahk\export.ahk
msgbox, % [1,2,3].join()
; => "1,2,3"
Verwendung
array.<fn>([params*])
Code: Select all
; Auf den doppelten Wert abbilden
arrayInt := [1, 5, 10]
arrayInt.map(func("fn_doubleInt"))
; => [2, 10, 20]
fn_doubleInt(int) {
return int * 2
}
; Zuordnung zur Objekteigenschaft
arrayObj := [{"name": "bob", "age": 22}, {"name": "tom", "age": 51}]
arrayObj.map(func("fn_returnName"))
; => ["bob", "tom"]
fn_returnName(obj) {
return obj.name
}
; Methodenverkettung
arrayObj := [{"name": "bob", "age": 22}, {"name": "tom", "age": 51}]
msgbox, % arrayObj.map(func("fn_returnProp").bind("age"))
.map(func("fn_doubleInt"))
.join(",")
; => "44,102"
fn_returnProp(prop, obj) {
return obj[prop]
}
Sortierung
JavaScript macht keine Start-/End- oder Links-/Rechts-Parameter verfügbar und diese Sortierung erfolgt auch nicht.
array.sort([params*])
Code: Select all
arrayInt := [11,9,5,10,1,6,3,4,7,8,2]
arrayInt.sort()
; => [1,2,3,4,5,6,7,8,9,10,11]
Ich dachte, es würde Spaß machen, die Dokumentationsseite zu übersetzen. Am Ende war es viel mehr Arbeit als ursprünglich erwartet; aber jetzt ist es geschafft!
Bitte senden Sie Pull-Requests an /docs/translations.csv, wenn Sie einen Fehler oder einen verbesserungswürdigen Bereich entdecken