Camelize, CamelCase
Montag, 20. Oktober 2008Wie in der post Vielfalt der Kodierung und die Kodierung der Ansätze, die Entwickler haben zur Lösung eines Problems zu sehen sind vielfältig und viele der verwendeten Programmiersprache. Hier ist, wie einige der bekanntesten JavaScript-Frameworks haben eine einfache Funktion der CamelCase gelöst:
Prototype.js
Prototype.js, Version 1.6.0.3, schlagen ein explizites Verfahren camelize() die camelcase auf einem String zu machen. The author's Ansatz ist ganz einfach und der Code ist selbsterklärend. In diesem Fall wurde nicht die Verwendung von regulären Ausdrücken!
- ( ) { camelize Funktion: () (
- this . split ( '-' ) , len = parts. length ; var Teile = this. split ('-'), len = Teile. Länge;
- len == 1 ) return parts [ 0 ] ; if (len == 1) return parts [0];
- this . charAt ( 0 ) == '-' camelized var = this. charAt (0) == '-'
- 0 ] . charAt ( 0 ) . toUpperCase ( ) + parts [ 0 ] . substring ( 1 ) ? Teile [0]. CharAt (0). ToUpperCase () + parts [0]. Substring (1)
- 0 ] ; : Teile [0];
- var i = 1 ; i < len ; i ++ ) for (var i = 1; i <len; i + +)
- i ] . charAt ( 0 ) . toUpperCase ( ) + parts [ i ] . substring ( 1 ) ; camelized + = parts [i]. charAt (0). toUpperCase () + parts [i]. substring (1);
- camelized return;
- )
Nutzen Sie auch einen Blick auf diese interessante Debatte.
mootools
Bibliothek mootools, Version 1.2, schlägt außerdem vor, eine Methode camelCase() In diesem Fall ist die Funktion wesentlich kompakter als im Vorschlag Prototype.js, dank der Verwendung von regulären Ausdrücken.
- ( ) { camelCase: function () (
- ( /-\D/g , function ( match ) { return this ersetzen. (/ - \ D / g, function (Spiel) (
- ( 1 ) . toUpperCase ( ) ; Rückspiel. charAt (1). toUpperCase ();
- ));
- )
jQuery
jQuery, ist Version 1.2.6, nicht vor ein explizites Verfahren. Dennoch, mit Blick in den Code, fand ich diese:
- name . replace ( /\-(\w)/g , function ( all , letter ) { return letter. toUpperCase ( ) ; } ) ; var = name camelCase. replace (/ \ - (\ w) / g, function (alle, Brief) (return Brief. toUpperCase ();));
Außerdem ist, wie ein Plugin, bietet jQuery ein String Prototyp Erweiterungen hinzugefügt, wo gerade eine Funktion camelize()
- / **
- * Zurück zur camelized String, die Beseitigung aller Unterstriche und Bindestriche
- * Und ersetzt sie durch Groß-Darstellung das nächste Zeichen ist.
- *
- * @ Example "font-weight". Camelize ()
- * @ Result "fontWeight"
- *
- * @ Example "border_width_bottom. Camelize ()
- * @ Result "borderWidthBottom"
- *
- * @ Example "border_width-bottom". Camelize ()
- * @ Result "borderWidthBottom"
- *
- * @ Name camelize
- * @ Typ String
- * @ Cat JavaScript / String
- * /
- , function ( ) { add ( "camelize", function () (
- ( /[-_]([az])/ig , function ( z , b ) { return b. toUpperCase ( ) ; } ) ; return this. ersetzen (/[-_]([ az]) / ig, function (z, b) (return b toUpperCase ();));
- ));
Dies insbesondere, berücksichtigt die Zeichen underscore (_) so wird vollständiger.













[...] In "this-and-a-post". Die Umwandlung ist vergleichbar mit dem der Schnecke camelize oder camelcase, hier zu sehen. Hier ist eine mögliche Umsetzung in PHP: PLAIN TEXT [...]