Baseline Widely available
localeCompare()
ë©ìëë 참조 문ìì´ì´ ì ë ¬ ìì¼ë¡ ì§ì ë 문ìì´ ì í¹ì ë¤ì ì¤ëì§ ëë ëì¼í 문ìì´ì¸ì§ ëíë´ë ìì¹ë¥¼ ë°íí©ëë¤.
const a = "réservé"; // With accents, lowercase
const b = "RESERVE"; // No accents, uppercase
console.log(a.localeCompare(b));
// Expected output: 1
console.log(a.localeCompare(b, "en", { sensitivity: "base" }));
// Expected output: 0
ìë¡ì´ locales
ì¸ìì options
ì¸ì를 ì¬ì©íë©´ ì ë ¬ì ì¬ì©ë ì¸ì´ë¥¼ ì§ì íê³ í¨ìì ëìì ì¬ì©ì ì ìí ì ììµëë¤. locales
ì options
ì ì¸ì를 무ìíë ì¤ëë 구íììë ì¬ì©ëë localeê³¼ ì ë ¬ ììë ìì í 구íì ìì¡´í©ëë¤.
localeCompare(compareString);
localeCompare(compareString, locales);
localeCompare(compareString, locales, options);
매ê°ë³ì
compareString
referenceStr
ê° ë¹êµëë 문ìì´.locales
ì options
ì´ë¬í ì¸ìë í¨ìì ëìì ì¬ì©ì ì ìíì¬ ìì© íë¡ê·¸ë¨ìì í¬ë§· ê·ì¹ì ì¬ì©í ì¸ì´ë¥¼ ì§ì í©ëë¤. "locales"
ì "options"
ì ì¸ì를 무ìíë 구íììë ì¬ì©ëë ë¡ì¼ì¼ê³¼ ë°íëë 문ìì´ì íìì ìì í 구íì ìì¡´í©ëë¤.
매ê°ë³ìì ìì¸ ë° ì¬ì© ë°©ë²ì Intl.Collator()
constructor를 참조íì¸ì.
compareString
ì ì referenceStr
ê° ìì¹íë ê²½ì° ìì, compareString
íì referenceStr
ê° ìì¹íë ê²½ì° ìì, ëë±í ê²½ì° 0
ì´ ë©ëë¤.
referenceStr
ê° compareString
ì í¹ì ë¤ì ì¤ëì§ ëë ëë±íì§ë¥¼ ëíë´ë ì ì를 ë°íí©ëë¤.
compareString
ì ì referenceStr
ì´ ì¤ë©´ ììcompareString
ë¤ì referenceStr
ì´ ì¤ë©´ ìì0
ì ë°íí©ëë¤.ì±ë¥ì£¼ì:
-1
ëë1
ì ì íí ë°í ê°ì ìì¡´íì§ ë§ì¸ì.ìì ì ìì ìì ì ìì ê²°ê³¼ë ë¸ë¼ì°ì ë§ë¤(ë¸ë¼ì°ì ë²ì ì ë°ë¼ìë) ë¤ë¦ ëë¤.ì´ë W3C ì¬ìììë ìì ê°ê³¼ ìì ê°ë§ íìí기 ë문ì ëë¤. ë¸ë¼ì°ì ì ë°ë¼ìë,
-2
ë2
를 ë°ííê±°ë, ê·¸ ì¸ì ìì ê°ì´ë ìì ê°ì ë°íí ìë ììµëë¤.
í° ë°°ì´ì ì ë ¬ê³¼ ê°ì´ ëëì 문ìì´ì ë¹êµíë ê²½ì°, Intl.Collator
ê°ì²´ë¥¼ ìì±íê³ í´ë¹ compare
íë¡í¼í°ê° ì ê³µíë í¨ì를 ì¬ì©íë ê²ì´ ì¢ìµëë¤.
localeCompare()
ì¬ì©
// "a"ë "c" ì ì ìì¹íë¯ë¡ ìì ê°ì ë°í
"a".localeCompare("c"); // -2 í¹ì -1 (ëë ë¤ë¥¸ ìì ê°)
// ìíë²³ ìì¼ë¡ ë¨ì´ "check"ë "against"ë³´ë¤ ë¤ì ìì¹íë¯ë¡ ìì ê°ì ë°í
"check".localeCompare("against"); // 2 í¹ì 1 (ëë ë¤ë¥¸ ìì ê°)
// "a"ì "a"ë ìë¡ ëë±íë¯ë¡ ì¤ë¦½ ê° 0ì ë°í
"a".localeCompare("a"); // 0
ë°°ì´ ì ë ¬
localeCompare()
ì ì¬ì©í´ ëì문ì를 구ë¶íì§ ìë ë°°ì´ ì ë ¬ì í ì ììµëë¤.
let items = ["réservé", "Premier", "Cliché", "communiqué", "café", "Adieu"];
items.sort((a, b) => a.localeCompare(b, "fr", { ignorePunctuation: true }));
// ['Adieu', 'café', 'Cliché', 'communiqué', 'Premier', 'réservé']
íì¥ì¸ì ë¸ë¼ì°ì ì§ì íì¸
locales
ì options
ì¸ìë ì¼ë¶ ë¸ë¼ì°ì ìì ìì§ ì§ìëì§ ììµëë¤.
구íì´ ì§ìëëì§ íì¸íë ¤ë©´ "i"
ì¸ì(ì못ë ì¸ì´(illegal language) íê·¸ê° ì ì¸ëë ìê±´)ì ì¬ì©í´ RangeError
ìì¸ë¥¼ ì°¾ìµëë¤.
function localeCompareSupportsLocales() {
try {
"foo".localeCompare("bar", "i");
} catch (e) {
return e.name === "RangeError";
}
return false;
}
locales
ì¬ì©
localeCompare()
ê²°ê³¼ë ì¸ì´ì ë°ë¼ ë¬ë¼ì§ëë¤. ìì© íë¡ê·¸ë¨ì ì¬ì©ì ì¸í°íì´ì¤ìì ì¬ì©ëë ì¸ì´ì ì ë ¬ ìì를 ì»ì¼ë ¤ë©´ ë°ëì locales
ì¸ì를 ì¬ì©íì¬ í´ë¹ ì¸ì´(ë° í´ë°± ì¸ì´ì ì¼ë¶)를 ì§ì íì¸ì.
console.log("ä".localeCompare("z", "de")); // ìì: ë
ì¼ì´ë Ã¤ê° z ì ì ìì¹
console.log("ä".localeCompare("z", "sv")); // ìì: ì¤ì¨ë´ì´ë Ã¤ê° z ë¤ì ìì¹
options
ì¬ì©
localeCompare()
ì´ ì ê³µíë ê²°ê³¼ë options
ì¸ì를 ì¬ì©í´ ì¬ì©ì ì ìí ì ììµëë¤.
// ë
ì¼ì´ìì äë a를 기본 문ì(base letter)ë¡ ê°ì§ëë¤.
console.log("ä".localeCompare("a", "de", { sensitivity: "base" })); // 0
// ì¤ì¨ë´ì´ìì äì aë ë³ëì 기본 문ìì
ëë¤.
console.log("ä".localeCompare("a", "sv", { sensitivity: "base" })); // ìì
ì«ì ì ë ¬
// 기본ì ì¼ë¡ "2" > "10"
console.log("2".localeCompare("10")); // 1
// numeric ìµì
ì¬ì©
console.log("2".localeCompare("10", undefined, { numeric: true })); // -1
// locales tag ì¬ì©
console.log("2".localeCompare("10", "en-u-kn-true")); // -1
ëª
ì¸ ë¸ë¼ì°ì í¸íì± ê°ì´ 보기
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4