Lodash 4参考手册
字符串 | String
String
_.camelCase(string='')
转换string
为骆驼案件。
以来
3.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回驼峰字符串。
例
_.camelCase('Foo Bar');
// => 'fooBar'
_.camelCase('--foo-bar--');
// => 'fooBar'
_.camelCase('__FOO_BAR__');
// => 'fooBar'
_.capitalize(string='')
将第一个字符转换string
为大写,其余转换为小写。
以来
3.0.0
参数
-
[string='']
(字符串):要大写的字符串。
返回
(字符串):返回大写的字符串。
例
_.capitalize('FRED');
// => 'Fred'
_.deburr(string='')
去毛刺string
通过将拉丁文补充-1(https://en.wikipedia.org/wiki/Latin-1 补编(Unicode_block%29#Character_table)和拉丁字母扩充-A字母基本拉丁字母和除去组合变音符号。
Since
3.0.0
参数
-
[string='']
(字符串):去毛刺的字符串。
返回
(字符串):返回去毛刺字符串。
例
_.deburr('déjà vu');
// => 'deja vu'
_.endsWith(string='', target, position=string.length)
检查是否string
以给定的目标字符串结束。
以来
3.0.0
参数
-
[string='']
(字符串):要检查的字符串。 -
[target]
(字符串):要搜索的字符串。 -
[position=string.length]
(数字):最多搜索的位置。
返回
(boolean):返回true
如果string
以target
else 结束false
。
例
_.endsWith('abc', 'c');
// => true
_.endsWith('abc', 'b');
// => false
_.endsWith('abc', 'b', 2);
// => true
_.escape(string='')
将字符“&”,“<”,“>”,“”和“'” string
转换为其对应的HTML实体。
注意:没有其他字符被转义。为了逃避额外的角色,请使用像他这样的第三方库。
虽然“>”字符为了对称而被转义,但像“>”和“/”这样的字符不需要在HTML中转义,除非它们是标记或未加引号属性值的一部分,否则没有特殊含义。有关更多详细信息,请参阅Mathias Bynens的文章 (在“半相关趣味事实”下)。
使用HTML时,应始终引用属性值以减少XSS向量。
以来
0.1.0
参数
-
[string='']
(字符串):要转义的字符串。
返回
(字符串):返回转义字符串。
例
_.escape('fred, barney, & pebbles');
// => 'fred, barney, & pebbles'
_.escapeRegExp(string='')
转义RegExp
特殊字符“^”,“$”,“”,“。”,“*”,“+”,“?”,“(”,“)”,“”,“”,“{”,“ }“和”|“ 中string
。
以来
3.0.0
参数
-
[string='']
(字符串):要转义的字符串。
返回
(字符串):返回转义字符串。
例
_.escapeRegExp('[lodash](https://lodash.com/)');
// => '\[lodash\]\(https://lodash\.com/\)'
_.kebabCase(string='')
转换string
为Kebab的情况。
以来
3.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回烤肉串字符串。
例
_.kebabCase('Foo Bar');
// => 'foo-bar'
_.kebabCase('fooBar');
// => 'foo-bar'
_.kebabCase('__FOO_BAR__');
// => 'foo-bar'
_.lowerCase(string='')
string
以空格分隔的字词转换为小写字母。
以来
4.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回下方的字符串。
例
_.lowerCase('--Foo-Bar--');
// => 'foo bar'
_.lowerCase('fooBar');
// => 'foo bar'
_.lowerCase('__FOO_BAR__');
// => 'foo bar'
_.lowerFirst(string='')
将第一个字符转换string
为小写。
以来
4.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回转换后的字符串。
例
_.lowerFirst('Fred');
// => 'fred'
_.lowerFirst('FRED');
// => 'fRED'
_.pad(string='', length=0, chars=' ')
string
如果它短于左侧和右侧垫length
。如果填充字符不能被平均分割,则会被截断length
。
以来
3.0.0
参数
-
[string='']
(字符串):要填充的字符串。 -
[length=0]
(数字):填充长度。 -
[chars=' ']
(字符串):用作填充的字符串。
返回
(字符串):返回填充的字符串。
例
_.pad('abc', 8);
// => ' abc '
_.pad('abc', 8, '_-');
// => '_-abc_-_'
_.pad('abc', 3);
// => 'abc'
_.padEnd(string='', length=0, chars=' ')
垫string
右侧,如果它比短length
。填充字符如果超过,则会被截断length
。
以来
4.0.0
参数
-
[string='']
(字符串):要填充的字符串。 -
[length=0]
(数字):填充长度。 -
[chars=' ']
(字符串):用作填充的字符串。
返回
(string): Returns the padded string.
例
_.padEnd('abc', 6);
// => 'abc '
_.padEnd('abc', 6, '_-');
// => 'abc_-_'
_.padEnd('abc', 3);
// => 'abc'
_.padStart(string ='',length = 0,chars ='')
垫string
左侧,如果是比较短的length
。填充字符如果超过,则会被截断length
。
自从
4.0.0
参数
-
[string='']
(字符串):要填充的字符串。 -
[length=0]
(数字):填充长度。 -
[chars=' ']
(字符串):用作填充的字符串。
返回
(字符串):返回填充的字符串。
示例
_.padStart('abc', 6);
// => ' abc'
_.padStart('abc', 6, '_-');
// => '_-_abc'
_.padStart('abc', 3);
// => 'abc'
_.parseInt(string, radix=10)
转换string
为指定基数的整数。如果radix
是undefined
或 0
,一个radix
的10
使用,除非value
是一个十六进制,在这种情况下radix
的16
使用。
注意:此方法与ES5的实现一致parseInt
。
以来
1.1.0
参数
-
string
(字符串):要转换的字符串。 -
[radix=10]
(数字):解释的基数value
。
返回
(数字):返回转换后的整数。
例
_.parseInt('08');
// => 8
_.map(['6', '08', '10'], _.parseInt);
// => [6, 8, 10]
_.repeat(string ='',n = 1)
重复给定的字符串n
时间。
以来
3.0.0
参数
-
[string='']
(字符串):要重复的字符串。 -
[n=1]
(数字):重复字符串的次数。
返回
(字符串):返回重复的字符串。
例
_.repeat('*', 3);
// => '***'
_.repeat('abc', 2);
// => 'abcabc'
_.repeat('abc', 0);
// => ''
_.replace(string ='',pattern,replacement)
替换比赛为pattern
在string
与 replacement
。
注意:此方法基于String#replace
。
以来
4.0.0
参数
-
[string='']
(字符串):要修改的字符串。 -
pattern
(RegExp | string):要替换的模式。 -
replacement
(功能|字符串):匹配替换。
返回
(字符串):返回修改后的字符串。
例
_.replace('Hi Fred', 'Fred', 'Barney');
// => 'Hi Barney'
_.snakeCase(string='')
转换string
为蛇的情况。
以来
3.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回蛇字符串。
例
_.snakeCase('Foo Bar');
// => 'foo_bar'
_.snakeCase('fooBar');
// => 'foo_bar'
_.snakeCase('--FOO-BAR--');
// => 'foo_bar'
_.split(string='', separator, limit)
拆分string
的separator
。
注意:此方法基于String#split
。
版本
4.0.0
参数
-
[string='']
(string): The string to split. -
separator
(RegExp|string): The separator pattern to split by. -
[limit]
(number): The length to truncate results to.
返回
(数组):返回字符串段。
例
_.split('a-b-c', '-', 2);
// => ['a', 'b']
_.startCase(string='')
转换string
为启动大小写。
以来
3.1.0
参数
-
[string='']
(字符串):要转换的字符串。
返回值
(字符串):返回开始的套用字符串。
例
_.startCase('--foo-bar--');
// => 'Foo Bar'
_.startCase('fooBar');
// => 'Foo Bar'
_.startCase('__FOO_BAR__');
// => 'FOO BAR'
_.startsWith(string='', target, position=0)
检查是否string
从给定的目标字符串开始。
以来
3.0.0
参数
-
[string='']
(字符串):要检查的字符串。 -
[target]
(字符串):要搜索的字符串。 -
[position=0]
(数字):从中搜索的位置。
返回
(boolean):返回true
如果string
以target
else 开始false
。
例
_.startsWith('abc', 'a');
// => true
_.startsWith('abc', 'b');
// => false
_.startsWith('abc', 'b', 1);
// => true
_.template(string='', options={})
创建一个编译的模板函数,可以在“插入”分隔符中插入数据属性,在“转义”分隔符中插入HTML转义插值数据属性,并在“评估”分隔符中执行JavaScript。数据属性可以作为模板中的自由变量来访问。如果给定设置对象,则优先于 _.templateSettings
值。
注意:在开发版本中,_.template
利用sourceURL来更容易地进行调试。
有关预编译模板的更多信息,请参阅lodash的自定义构建文档。
有关Chrome扩展程序沙箱的更多信息,请参阅Chrome的扩展程序文档。
版本
0.1.0
参数
-
[string='']
(string): The template string. -
[options={}]
(Object): The options object. -
[options.escape=_.templateSettings.escape]
(RegExp): The HTML "escape" delimiter. -
[options.evaluate=_.templateSettings.evaluate]
(RegExp): The "evaluate" delimiter. -
[options.imports=_.templateSettings.imports]
(Object): An object to import into the template as free variables. -
[options.interpolate=_.templateSettings.interpolate]
(RegExp): The "interpolate" delimiter. -
[options.sourceURL='lodash.templateSources[n]']
(string): The sourceURL of the compiled template. -
[options.variable='obj']
(string): The data object variable name.
返回
(功能):返回已编译的模板功能。
例
// Use the "interpolate" delimiter to create a compiled template.
var compiled = _.template('hello <%= user %>!');
compiled({ 'user': 'fred' });
// => 'hello fred!'
// Use the HTML "escape" delimiter to escape data property values.
var compiled = _.template('<b><%- value %></b>');
compiled({ 'value': '<script>' });
// => '<b>&lt;script&gt;</b>'
// Use the "evaluate" delimiter to execute JavaScript and generate HTML.
var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');
compiled({ 'users': ['fred', 'barney'] });
// => '<li>fred</li><li>barney</li>'
// Use the internal `print` function in "evaluate" delimiters.
var compiled = _.template('<% print("hello " + user); %>!');
compiled({ 'user': 'barney' });
// => 'hello barney!'
// Use the ES template literal delimiter as an "interpolate" delimiter.
// Disable support by replacing the "interpolate" delimiter.
var compiled = _.template('hello ${ user }!');
compiled({ 'user': 'pebbles' });
// => 'hello pebbles!'
// Use backslashes to treat delimiters as plain text.
var compiled = _.template('<%= "\\<%- value %\\>" %>');
compiled({ 'value': 'ignored' });
// => '<%- value %>'
// Use the `imports` option to import `jQuery` as `jq`.
var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';
var compiled = _.template(text, { 'imports': { 'jq': jQuery } });
compiled({ 'users': ['fred', 'barney'] });
// => '<li>fred</li><li>barney</li>'
// Use the `sourceURL` option to specify a custom sourceURL for the template.
var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });
compiled(data);
// => Find the source of "greeting.jst" under the Sources tab or Resources panel of the web inspector.
// Use the `variable` option to ensure a with-statement isn't used in the compiled template.
var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });
compiled.source;
// => function(data) {
// var __t, __p = '';
// __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';
// return __p;
// }
// Use custom template delimiters.
_.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
var compiled = _.template('hello {{ user }}!');
compiled({ 'user': 'mustache' });
// => 'hello mustache!'
// Use the `source` property to inline compiled templates for meaningful
// line numbers in error messages and stack traces.
fs.writeFileSync(path.join(process.cwd(), 'jst.js'), '\
var JST = {\
"main": ' + _.template(mainText).source + '\
};\
');
_.toLower(string='')
string
整体而言,转换为小写字母,就像String#toLowerCase一样。
版本
4.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回下方的字符串。
例
_.toLower('--Foo-Bar--');
// => '--foo-bar--'
_.toLower('fooBar');
// => 'foobar'
_.toLower('__FOO_BAR__');
// => '__foo_bar__'
_.toUpper(string='')
string
整体转换为大写字母,就像String#toUpperCase一样。
版本
4.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回上方的字符串。
例
_.toUpper('--foo-bar--');
// => '--FOO-BAR--'
_.toUpper('fooBar');
// => 'FOOBAR'
_.toUpper('__foo_bar__');
// => '__FOO_BAR__'
_.trim(string='', chars=whitespace)
从中删除前导和尾部的空格或指定的字符string
。
版本
3.0.0
参数
-
[string='']
(字符串):要修剪的字符串。 -
[chars=whitespace]
(字符串):要修剪的字符。
返回
(字符串):返回修剪后的字符串。
例
_.trim(' abc ');
// => 'abc'
_.trim('-_-abc-_-', '_-');
// => 'abc'
_.map([' foo ', ' bar '], _.trim);
// => ['foo', 'bar']
_.trimEnd(string ='',chars = whitespace)
从中删除尾部空白或指定的字符string
。
版本
4.0.0
参数
-
[string='']
(字符串):要修剪的字符串。 -
[chars=whitespace]
(字符串):要修剪的字符。
返回
(字符串):返回修剪后的字符串。
例
_.trimEnd(' abc ');
// => ' abc'
_.trimEnd('-_-abc-_-', '_-');
// => '-_-abc'
_.trimStart(string='', chars=whitespace)
从中删除前导空格或指定的字符string
。
版本
4.0.0
参数
-
[string='']
(字符串):要修剪的字符串。 -
[chars=whitespace]
(字符串):要修剪的字符。
返回
(字符串):返回修剪后的字符串。
例
_.trimStart(' abc ');
// => 'abc '
_.trimStart('-_-abc-_-', '_-');
// => 'abc-_-'
_.truncate(string='', options={})
string
如果它长于给定的最大字符串长度,则截断。截断字符串的最后一个字符被替换为缺省为“...”的省略字符串。
版本
4.0.0
参数
-
[string='']
(字符串):要截断的字符串。 -
[options={}]
(对象):选项对象。 -
[options.length=30]
(数字):最大字符串长度。 -
[options.omission='...']
(字符串):省略表示文本的字符串。 -
[options.separator]
(RegExp | string):要截断的分隔符模式。
返回
(字符串):返回截断的字符串。
例
_.truncate('hi-diddly-ho there, neighborino');
// => 'hi-diddly-ho there, neighbo...'
_.truncate('hi-diddly-ho there, neighborino', {
'length': 24,
'separator': ' '
});
// => 'hi-diddly-ho there,...'
_.truncate('hi-diddly-ho there, neighborino', {
'length': 24,
'separator': /,? +/
});
// => 'hi-diddly-ho there...'
_.truncate('hi-diddly-ho there, neighborino', {
'omission': ' [...]'
});
// => 'hi-diddly-ho there, neig [...]'
_.unescape(string='')
相反的_.escape
; 这种方法的HTML实体转换 &amp;
,&lt;
,&gt;
,&quot;
,和 &#39;
在string
其对应的字符。
注意:没有其他HTML实体未转义。为了避免额外的HTML实体使用像他这样的第三方库。
版本
0.6.0
参数
-
[string='']
(字符串):unescape的字符串。
返回
(字符串):返回未转义的字符串。
例
_.unescape('fred, barney, & pebbles');
// => 'fred, barney, & pebbles'
_.upperCase(string='')
string
以空格分隔的字词转换为大写字母。
版本
4.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回上方的字符串。
例
_.upperCase('--foo-bar');
// => 'FOO BAR'
_.upperCase('fooBar');
// => 'FOO BAR'
_.upperCase('__foo_bar__');
// => 'FOO BAR'
_.upperFirst(string='')
将第一个字符转换string
为大写。
版本
4.0.0
参数
-
[string='']
(字符串):要转换的字符串。
返回
(字符串):返回转换后的字符串。
例
_.upperFirst('fred');
// => 'Fred'
_.upperFirst('FRED');
// => 'FRED'
_.words(string='', pattern)
拆分string
成它的单词的数组。
版本
3.0.0
参数
-
[string='']
(字符串):要检查的字符串。 -
[pattern]
(RegExp | string):匹配单词的模式。
返回
(数组):返回单词string
。
例
_.words('fred, barney, & pebbles');
// => ['fred', 'barney', 'pebbles']
_.words('fred, barney, & pebbles', /[^, ]+/g);
// => ['fred', 'barney', '&', 'pebbles']
字符串 | String相关
Lodash 是一个具有一致接口、模块化、高性能等特性的 JavaScript 工具库。
主页 | https://lodash.com/ |
源码 | https://github.com/lodash/lodash/ |
版本 | 4 |
发布版本 | 4.17.4 |