Joindre Deux Tableaux dans ColdFusion
Est-il un moyen intégré pour joindre deux tableaux dans ColdFusion, semblable à du JavaScript array.concat()
?
Vous devez vous connecter pour publier un commentaire.
Est-il un moyen intégré pour joindre deux tableaux dans ColdFusion, semblable à du JavaScript array.concat()
?
Vous devez vous connecter pour publier un commentaire.
Pas vraiment, mais devinez quoi, il suffit d'utiliser Java! 🙂
référence: Java de l'Interface de Collecte de l'API.
source: http://www.aliaspooryorik.com/blog/index.cfm/e/posts.details/post/merging-two-arrays-267
removeAll
,retainAll
, et cætera, c'est que les méthodes de java ne sont pas aussi indulgent que votre typique de la fonction FC. Ils sont généralement de type de données sensibles. Donc"2"
(string) etval(2)
(nombre) sont considérés comme des valeurs différentes/éléments. Sauf si vous êtes absolument certain que les types de données dans les deux tableaux de correspondance, vous êtes mieux d'utiliser d'autres méthodes de l'OMI.CF10+, utilisez
https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-a-b/arrayappend.html
Si vous utilisez Railo, vous pouvez utiliser ArrayMerge (E. g.
<cfset NewArray=ArrayMerge(FirstArray,SecondArray)>
).Son un peu stupide comment coldfusion manque beaucoup de fonctions de base que l'on peut attendre d'un langage de script. Voici celui que j'avais à écrire rapidement.
Dans les FC, 10 ou Railo 4, vous pouvez utiliser la méthode concat (), fonction de la Le trait de soulignement.cfc bibliothèque pour obtenir un nouveau tableau qui est une concaténation de deux autres tableaux (sans modification de l'existant, des tableaux). Exemple cfscript:
Résultat:
À l'aide de cette méthode pour obtenir un nouveau tableau est un peu plus propre que la création d'un nouveau tableau et en appelant ArrayAppend sur deux fois.
(Disclaimer: j'ai écrit le trait de Soulignement.cfc)
Dans le tableau javascript.join(s) crée une chaîne de caractères de tous les éléments de la matrice séparés par le séparateur s. Une fonction similaire dans ColdFusion est le ArrayToList fonction. Aussi loin que l'ajout d'un tableau à l'autre, je ne crois pas qu'il existe un CF de la fonction pour cela. Vérifier http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=functions-pt0_03.html#3473387 pour voir la liste des fonctions de Tableau dans la MUCOVISCIDOSE. Ou essayez quelque chose comme ceci:
Vous pouvez facilement concaténer deux listes:
<cfset combolist = ListAppend(lista,listb, ",")>
Donc, d'abord convertir vos deux tableaux, de listes à l'aide de
ArrayToList()
. Combiner les deux listes à la ListAppend() et ensuite de les convertir la réponse à un tableau avecListToArray()
.Je ne sais pas comment efficace, c'est, mais le code est très simple. J'aimerais utiliser le arrayAppend (), mais je suis dans ColdFusion 8.
,
. c'est à dire La valeur uniquearr[1] ="Doe, John"
deviendraitarr[1] = Doe, arr[2] = John
.~!
signifie CF voit les valeurs délimitées par des~
OU!
. (Les choses ont changé dans CF10). À l'aide d'un seul caractère ascii par exemple 30, et préservation vide éléments de la liste, devrait obtenir beaucoup plus près.J'ai pris cette de Ben Nadel et utilisé pour effectuer de chiffrement et de hachage. A travaillé comme un charme!