1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
---
title: String.prototype.toLocaleLowerCase()
slug: Web/JavaScript/Reference/Global_Objects/String/toLocaleLowerCase
translation_of: Web/JavaScript/Reference/Global_Objects/String/toLocaleLowerCase
---
<div>{{JSRef}}</div>
<p><strong><code>toLocaleLowerCase()</code></strong>方法根据任何指定区域语言环境设置的大小写映射,返回调用字符串被转换为小写的格式。</p>
<h2 id="语法">语法</h2>
<pre><var>str</var>.toLocaleLowerCase()
<var>str</var>.toLocaleLowerCase(locale)
<var>str</var>.toLocaleLowerCase([locale, locale, ...])</pre>
<h3 id="参数">参数</h3>
<dl>
<dt><code>locale</code> {{optional_inline}}</dt>
<dd>参数 <code>locale</code> 指明要转换成小写格式的特定语言区域。 如果以一个数组 {{jsxref("Array")}}形式给出多个locales, 最合适的地区将被选出来应用(参见<a href="https://tc39.github.io/ecma402/#sec-bestavailablelocale">best available locale</a>)。默认的locale是主机环境的当前区域(locale)设置。</dd>
</dl>
<h3 id="返回值">返回值</h3>
<p>根据任何特定于语言环境的案例映射规则将被调用字串转换成小写格式的一个新字符串。</p>
<h3 id="Exceptions">Exceptions</h3>
<ul>
<li>A {{jsxref("RangeError")}} ("invalid language tag: xx_yy") is thrown if a <code>locale</code> argument isn't a valid language tag.</li>
<li>A {{jsxref("TypeError")}} ("invalid element in locales argument") is thrown if an array element isn't of type string.</li>
</ul>
<h2 id="描述">描述</h2>
<p><code>toLocaleLowerCase()</code> 方法返回根据任意区域语言大小写映射集而转换成小写格式的字符串。<code>toLocaleLowerCase()</code> 并不会影响字符串原本的值。在大多数情况下,该方法和调用 {{jsxref("String.prototype.toLowerCase()", "toLowerCase()")}}的结果相同,但是在某些区域环境中,比如土耳其语,它的大小写映射并不遵循在Unicode中的默认的大小写映射,因此会有一个不同的结果。</p>
<h2 id="例子">例子</h2>
<h3 id="使用toLocaleLowerCase"><code>使用toLocaleLowerCase()</code></h3>
<pre><code>'ALPHABET'.toLocaleLowerCase(); // 'alphabet'
'\u0130'.toLocaleLowerCase('tr') === 'i'; // true
'\u0130'.toLocaleLowerCase('en-US') === 'i'; // false
let locales = ['tr', 'TR', 'tr-TR', 'tr-u-co-search', 'tr-x-turkish'];
'\u0130'.toLocaleLowerCase(locales) === 'i'; // true</code></pre>
<h2 id="规范">规范</h2>
<table>
<tbody>
<tr>
<th scope="col">Specification</th>
<th scope="col">Status</th>
<th scope="col">Comment</th>
</tr>
<tr>
<td>{{SpecName('ES3')}}</td>
<td>{{Spec2('ES3')}}</td>
<td>Initial definition. Implemented in JavaScript 1.2.</td>
</tr>
<tr>
<td>{{SpecName('ES5.1', '#sec-15.5.4.17', 'String.prototype.toLocaleLowerCase')}}</td>
<td>{{Spec2('ES5.1')}}</td>
<td></td>
</tr>
<tr>
<td>{{SpecName('ES6', '#sec-string.prototype.tolocalelowercase', 'String.prototype.toLocaleLowerCase')}}</td>
<td>{{Spec2('ES6')}}</td>
<td></td>
</tr>
<tr>
<td>{{SpecName('ESDraft', '#sec-string.prototype.tolocalelowercase', 'String.prototype.toLocaleLowerCase')}}</td>
<td>{{Spec2('ESDraft')}}</td>
<td></td>
</tr>
<tr>
<td>{{SpecName('ES Int Draft', '#sup-string.prototype.tolocalelowercase', 'String.prototype.toLocaleLowerCase')}}</td>
<td>{{Spec2('ES Int Draft')}}</td>
<td>ES Intl 2017 added the <code>locale</code>parameter.</td>
</tr>
</tbody>
</table>
<h2 id="浏览器兼容性">浏览器兼容性</h2>
{{Compat}}
<h2 id="参阅">参阅</h2>
<ul>
<li>{{jsxref("String.prototype.toLocaleUpperCase()")}}</li>
<li>{{jsxref("String.prototype.toLowerCase()")}}</li>
<li>{{jsxref("String.prototype.toUpperCase()")}}</li>
</ul>
|