Comme vu dans le poste de variétés de codage et le codage des approches qu'un développeur peut avoir à résoudre un problème sont multiples et diverses pour le même langage de programmation utilisé. Voici comment quelques-uns des principaux frameworks JavaScript avoir résolu une simple fonction de CamelCase :
Prototype.js
Prototype.js , version 1.6.0.3, propose explicitement une méthode camelize() pour rendre le camelcase sur une corde. L'approche de l'auteur est assez simple et le code est auto-explicatif. Dans ce cas, il n'a pas été fait aucun usage de l'expression régulière!
1 2 3 4 5 6 7 8 9 10 11 12 13 | ( ) { camelize: function () { this . split ( '-' ) , len = parts. length ; var = pièces cette division ('-'), len = parties de longueur..; len == 1 ) return parts [ 0 ] ; if (len == 1) le retour des pièces [0]; this . charAt ( 0 ) == '-' camelized var = ce charAt (0) ==. '-' 0 ] . charAt ( 0 ) . toUpperCase ( ) + parts [ 0 ] . substring ( 1 ) ? Pièces [0]. CharAt (0). ToUpperCase () + pièces [0]. Substring (1) 0 ] ; : Pièces [0]; var i = 1 ; i < len ; i ++ ) for (var i = 1, i <len; i + +) i ] . charAt ( 0 ) . toUpperCase ( ) + parts [ i ] . substring ( 1 ) ; camelized + = parties [i] charAt (0) toUpperCase () + pièces [i]-chaîne (1)...; retour camelized; } |
Jetez un oeil à cette discussion intéressante .
mootools
La bibliothèque mootools , version 1.2, propose également une méthode camelCase() . Dans ce cas, la fonction est beaucoup plus compacte que celle proposée par prototype.js, grâce à l'utilisation des expressions régulières.
1 2 3 4 5 | ( ) { camelCase: function () { ( /-\D/g , function ( match ) { retourner ce remplacement (/ -. \ D / G, la fonction (match) { ( 1 ) . toUpperCase ( ) ; match retour charAt (1) toUpperCase ()..; }); } |
jQuery
jQuery , la version 1.2.6, ne propose pas une méthode explicite. Cependant, regarder dans le code, j'ai trouvé ceci:
1 | name . replace ( /\-(\w)/g , function ( all , letter ) { return letter. toUpperCase ( ) ; } ) ; var name = camelCase remplacer (/ \ -. retour de courrier (\ w) / g, la fonction (tous, lettre) {toUpperCase ();});. |
En outre, comme un plugin, jQuery propose une extension de prototype de chaîne qui ajoute, en fait, une fonction camelize() :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | / ** * Retourner à cordes camelized, en supprimant toutes soulignement et des tirets * Remplacement de l'autre et avec sa représentation en caractères majuscules. * * @ Exemple "font-weight". Camelize () * @ Result "fontWeight" * * Exemple @ "border_width_bottom". Camelize () * @ Result "borderWidthBottom" * * @ Exemple "border_width-bas». Camelize () * @ Result "borderWidthBottom" * * Nom @ camelize * @ Type String * @ Cat JavaScript / String * / , function ( ) { ajouter ("camelize", function () { ( /[-_]([az])/ig , function ( z , b ) { return b. toUpperCase ( ) ; } ) ; retourner ce. remplacera (/[-_]([ az]) / ig, fonction (z, b) {return b toUpperCase ();}); }); |
Ceci, en particulier, prend en compte le caractère underscore (_) , ce qui les rend plus complètes.










[...] Dans "ce-et-un-message". La transformation est similaire à celle de la limace ou camelize camelcase, qu'on voit ici. Voici une implémentation possible en PHP: Texte brut [...]