Ember.String Namespace packages/ember-runtime/lib/system/string.js:144
PUBLIC
Defined in: packages/ember-runtime/lib/system/string.js:144
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.
camelize
(str)
String
public
Returns the lowerCamelCase form of a string.
1 2 3 4 5 6 |
'innerHTML'.camelize(); // 'innerHTML' 'action_name'.camelize(); // 'actionName' 'css-class-name'.camelize(); // 'cssClassName' 'my favorite items'.camelize(); // 'myFavoriteItems' 'My Favorite Items'.camelize(); // 'myFavoriteItems' 'private-docs/owner-invoice'.camelize(); // 'privateDocs/ownerInvoice' |
Parameters:
- str String
- The string to camelize.
Returns:
- String
- the camelized string.
capitalize
(str)
String
public
Returns the Capitalized form of a string
1 2 3 4 5 |
'innerHTML'.capitalize() // 'InnerHTML' 'action_name'.capitalize() // 'Action_name' 'css-class-name'.capitalize() // 'Css-class-name' 'my favorite items'.capitalize() // 'My favorite items' 'privateDocs/ownerInvoice'.capitalize(); // 'PrivateDocs/ownerInvoice' |
Parameters:
- str String
- The string to capitalize.
Returns:
- String
- The capitalized string.
classify
(str)
String
public
Returns the UpperCamelCase form of a string.
1 2 3 4 5 |
'innerHTML'.classify(); // 'InnerHTML' 'action_name'.classify(); // 'ActionName' 'css-class-name'.classify(); // 'CssClassName' 'my favorite items'.classify(); // 'MyFavoriteItems' 'private-docs/owner-invoice'.classify(); // 'PrivateDocs/OwnerInvoice' |
Parameters:
- str String
- the string to classify
Returns:
- String
- the classified string
dasherize
(str)
String
public
Replaces underscores, spaces, or camelCase with dashes.
1 2 3 4 5 |
'innerHTML'.dasherize(); // 'inner-html' 'action_name'.dasherize(); // 'action-name' 'css-class-name'.dasherize(); // 'css-class-name' 'my favorite items'.dasherize(); // 'my-favorite-items' 'privateDocs/ownerInvoice'.dasherize(); // 'private-docs/owner-invoice' |
Parameters:
- str String
- The string to dasherize.
Returns:
- String
- the dasherized string.
decamelize
(str)
String
public
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
deprecated
public
Use ES6 template strings instead: http://babeljs.io/docs/learn-es2015/#template-strings
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
public
static
Mark a string as safe for unescaped output with Ember templates. If you return HTML from a helper, use this function to ensure Ember's rendering layer 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.
loc
(str, formats)
String
public
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
public
More general than decamelize. Returns the lower_case_and_underscored form of a string.
1 2 3 4 5 |
'innerHTML'.underscore(); // 'inner_html' 'action_name'.underscore(); // 'action_name' 'css-class-name'.underscore(); // 'css_class_name' 'my favorite items'.underscore(); // 'my_favorite_items' 'privateDocs/ownerInvoice'.underscore(); // 'private_docs/owner_invoice' |
Parameters:
- str String
- The string to underscore.
Returns:
- String
- the underscored string.
w
(str)
Array
public
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:
- Array
- array containing the split strings