Ember.String Namespace packages/ember-runtime/lib/system/string.js:24
Defined in: packages/ember-runtime/lib/system/string.js:24
Module: ember-runtime
Defines string helper methods including string formatting and localization.
Unless Ember.EXTEND_PROTOTYPES.String
is false
these methods will also be
added to the String.prototype
as well.
Methods
camelize
(str)
String
Returns the lowerCamelCase form of a string.
1 2 3 4 5 |
'innerHTML'.camelize(); // 'innerHTML' 'action_name'.camelize(); // 'actionName' 'css-class-name'.camelize(); // 'cssClassName' 'my favorite items'.camelize(); // 'myFavoriteItems' 'My Favorite Items'.camelize(); // 'myFavoriteItems' |
Parameters:
- str String
- The string to camelize.
Returns:
- String
- the camelized string.
capitalize
(str)
String
Returns the Capitalized form of a string
1 2 3 4 |
'innerHTML'.capitalize() // 'InnerHTML' 'action_name'.capitalize() // 'Action_name' 'css-class-name'.capitalize() // 'Css-class-name' 'my favorite items'.capitalize() // 'My favorite items' |
Parameters:
- str String
- The string to capitalize.
Returns:
- String
- The capitalized string.
classify
(str)
String
Returns the UpperCamelCase form of a string.
1 2 3 4 |
'innerHTML'.classify(); // 'InnerHTML' 'action_name'.classify(); // 'ActionName' 'css-class-name'.classify(); // 'CssClassName' 'my favorite items'.classify(); // 'MyFavoriteItems' |
Parameters:
- str String
- the string to classify
Returns:
- String
- the classified string
dasherize
(str)
String
Replaces underscores, spaces, or camelCase with dashes.
1 2 3 4 |
'innerHTML'.dasherize(); // 'inner-html' 'action_name'.dasherize(); // 'action-name' 'css-class-name'.dasherize(); // 'css-class-name' 'my favorite items'.dasherize(); // 'my-favorite-items' |
Parameters:
- str String
- The string to dasherize.
Returns:
- String
- the dasherized string.
decamelize
(str)
String
Converts a camelized string into all lower case separated by underscores.
1 2 3 4 |
'innerHTML'.decamelize(); // 'inner_html' 'action_name'.decamelize(); // 'action_name' 'css-class-name'.decamelize(); // 'css-class-name' 'my favorite items'.decamelize(); // 'my favorite items' |
Parameters:
- str String
- The string to decamelize.
Returns:
- String
- the decamelized string.
fmt
(str, formats)
String
Apply formatting options to the string. This will look for occurrences of "%@" in your string and substitute them with the arguments you pass into this method. If you want to control the specific order of replacement, you can add a number after the key as well to indicate which argument you want to insert.
Ordered insertions are most useful when building loc strings where values you need to insert may appear in different orders.
1 2 |
"Hello %@ %@".fmt('John', 'Doe'); // "Hello John Doe" "Hello %@2, %@1".fmt('John', 'Doe'); // "Hello Doe, John" |
Parameters:
- str String
- The string to format
- formats Array
- An array of parameters to interpolate into string.
Returns:
- String
- formatted string
htmlSafe
Handlebars.SafeString
static
Mark a string as safe for unescaped output with Handlebars. If you return HTML from a Handlebars helper, use this function to ensure Handlebars does not escape the HTML.
1 |
Ember.String.htmlSafe('<div>someString</div>')
|
Returns:
- Handlebars.SafeString
- a string that will not be html escaped by Handlebars
humanize
(str)
String
Returns the Humanized form of a string
Replaces underscores with spaces, and capitializes first character of string. Also strips "_id" suffixes.
1 2 |
'first_name'.humanize() // 'First name' 'user_id'.humanize() // 'User' |
Parameters:
- str String
- The string to humanize.
Returns:
- String
- The humanized string.
loc
(str, formats)
String
Formats the passed string, but first looks up the string in the localized
strings hash. This is a convenient way to localize text. See
Ember.String.fmt()
for more information on formatting.
Note that it is traditional but not required to prefix localized string keys with an underscore or other character so you can easily identify localized strings.
1 2 3 4 5 6 7 |
Ember.STRINGS = { '_Hello World': 'Bonjour le monde', '_Hello %@ %@': 'Bonjour %@ %@' }; Ember.String.loc("_Hello World"); // 'Bonjour le monde'; Ember.String.loc("_Hello %@ %@", ["John", "Smith"]); // "Bonjour John Smith"; |
Parameters:
- str String
- The string to format
- formats Array
- Optional array of parameters to interpolate into string.
Returns:
- String
- formatted string
underscore
(str)
String
More general than decamelize. Returns the lower_case_and_underscored form of a string.
1 2 3 4 |
'innerHTML'.underscore(); // 'inner_html' 'action_name'.underscore(); // 'action_name' 'css-class-name'.underscore(); // 'css_class_name' 'my favorite items'.underscore(); // 'my_favorite_items' |
Parameters:
- str String
- The string to underscore.
Returns:
- String
- the underscored string.
w
(str)
String
Splits a string into separate units separated by spaces, eliminating any
empty strings in the process. This is a convenience method for split that
is mostly useful when applied to the String.prototype
.
1 2 3 4 5 6 7 |
Ember.String.w("alpha beta gamma").forEach(function(key) { console.log(key); }); // > alpha // > beta // > gamma |
Parameters:
- str String
- The string to split
Returns:
- String
- split string