Kann ich ein Array in jQuery wie in PHP implodieren?
javascript
jquery
implode
Omega
quelle
quelle
So was:
quelle
Array.join
ist das, was Sie brauchen, aber wenn Sie möchten, haben die freundlichen Leute von phpjs.orgimplode
für Sie erstellt.Dann etwas abweichendes Thema. Wie @jon_darkstar bereits erwähnt hat, ist jQuery JavaScript und nicht umgekehrt. Sie müssen nicht müssen JavaScript kennen , um zu verstehen , wie jQuery verwenden, aber es ist sicherlich nicht schaden , und wenn Sie beginnen Wiederverwertbarkeit zu schätzen oder beginnen auf das größere Bild suchen Sie unbedingt benötigen , es zu lernen.
quelle
Wenn Sie zum späteren Nachschlagen das Verhalten von PHPs
implode()
nachahmen möchten, wenn kein Trennzeichen angegeben ist (verbinden Sie die Teile buchstäblich nur miteinander), müssen Sie eine leere Zeichenfolge an Javascript übergeben, dajoin()
sonst standardmäßig Kommas als Trennzeichen verwendet werden:quelle
Mit der Methode join () wird eine neue Zeichenfolge erstellt und zurückgegeben, indem alle Elemente in einem Array verkettet werden.
Arbeitsbeispiel
quelle
Wir können eine Alternative zum Implodieren von in Javascript erstellen:
quelle
Array
Konstruktors anstelle von Literalen ist unnötig ausführlich. Wenn Sie die implodierende Funktion unbedingt neu erstellen möchten, ist es klug, die integrierte Join-Methode mit Ihrer eigenen Funktion zu versehen. Das Klügere ist, die Sprache zu lernen, in der Sie programmieren.array.join
erkannte nicht ";" wie ein Trennzeichen, aber durch Komma ersetzen. Mit jQuery können Sie$.each
ein Array implodieren (Beachten Sie, dass output_saved_json das Array und tmp die Zeichenfolge ist, in der das implodierte Array gespeichert wird):Ich habe Teilzeichenfolge verwendet, um das letzte ";" im Finale ohne Notwendigkeit hinzugefügt. Wenn Sie es vorziehen, können Sie stattdessen
substring
Folgendes verwenden:Ich denke, diese letzte Lösung ist langsamer als die erste, da jedes Mal überprüft werden muss, ob sich der Index von der Länge des Arrays
$.each
unterscheidet, ohne zu enden.quelle
your_array.join(';')