JavaScript에서 문자열 비교
평등
두 문자열 프리미티브를 비교하고 있음을 알고 있으면 ==
또는 ===
연산자를 사용할 수 있습니다.
"abba" === "abba" // true
"abba" == "abba" // true
문자열 프리미티브를 문자열이 아닌 것과 비교하는 경우 ==
및 ===
는 다르게 동작합니다.
==
연산자를 사용할 때 문자열이 아닌 것은 문자열로 강제 변환됩니다. 즉, JavaScript는
값을 비교하기 전에 문자열입니다.
9 == "9"
// becomes
"9" == "9" //true
비문자열이 문자열로 강제 변환되지 않는 엄격한 비교를 위해 ===
를 사용합니다.
9 === "9" // false
같지 않음 연산자!=
및 !==
의 경우에도 마찬가지입니다.
9 != "9" // false
9 !== "9" // true
무엇을 사용해야 할지 잘 모르겠다면 ====
를 사용하여 엄격한 동등성을 사용하는 것이 좋습니다.
When using String objects, two objects with the same value are not considered equal:
new String("js") == new String("js") // false
new String("js") === new String("js") // false
대소문자 구분
대소문자를 구분하지 않는 비교의 경우 두 문자열을 모두 대문자 또는 소문자로 변환한 다음 비교하지 마십시오. 일부 문자에서는 신뢰할 수 없기 때문입니다.
대신 localeCompare을 사용하십시오.
let a = 'Résumé';
let b = 'RESUME';
// Incorrect: returns 'false'
a.toLowerCase() === b.toLowerCase()
// Correct: returns '1'
a.localeCompare(b, undefined, { sensitivity: 'accent' })
localeCompare는 다음 브라우저에서 지원됩니다.
큼/작음
<
및 >
연산자를 사용하여 문자열을 비교할 때 JavaScript는 각 문자를 '사전 순서'로 비교합니다.
즉, 사전에 나오는 순서대로 문자별로 비교됩니다.
"aardvark" < "animal" // true
"gamma" > "zulu" // false
When comparing strings using <
>
, lowercase letters are considered larger than uppercase.
"aardvark" > "Animal" // true
This is because JavaScript is actually using each character's value in Unicode, where lowercase letters are after uppercase letters.
참 또는 거짓 문자열
JavaScript의 빈 문자열은 ==
연산자와 비교할 때 거짓으로 간주됩니다.
(하지만 ===
를 사용할 때는 아님)
("" == false) // true
("" === false) // false
값이 있는 문자열은 'true'이므로 다음과 같이 할 수 있습니다.
if (someString) {
// string has a value
} else {
// string is empty or undefined
}
Reference
이 문제에 관하여(JavaScript에서 문자열 비교), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/davejsaunders/comparing-strings-in-javascript-4bj0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
"abba" === "abba" // true
"abba" == "abba" // true
9 == "9"
// becomes
"9" == "9" //true
9 === "9" // false
9 != "9" // false
9 !== "9" // true
When using String objects, two objects with the same value are not considered equal:
new String("js") == new String("js") // false
new String("js") === new String("js") // false
대소문자를 구분하지 않는 비교의 경우 두 문자열을 모두 대문자 또는 소문자로 변환한 다음 비교하지 마십시오. 일부 문자에서는 신뢰할 수 없기 때문입니다.
대신 localeCompare을 사용하십시오.
let a = 'Résumé';
let b = 'RESUME';
// Incorrect: returns 'false'
a.toLowerCase() === b.toLowerCase()
// Correct: returns '1'
a.localeCompare(b, undefined, { sensitivity: 'accent' })
localeCompare는 다음 브라우저에서 지원됩니다.
큼/작음
<
및 >
연산자를 사용하여 문자열을 비교할 때 JavaScript는 각 문자를 '사전 순서'로 비교합니다.
즉, 사전에 나오는 순서대로 문자별로 비교됩니다.
"aardvark" < "animal" // true
"gamma" > "zulu" // false
When comparing strings using <
>
, lowercase letters are considered larger than uppercase.
"aardvark" > "Animal" // true
This is because JavaScript is actually using each character's value in Unicode, where lowercase letters are after uppercase letters.
참 또는 거짓 문자열
JavaScript의 빈 문자열은 ==
연산자와 비교할 때 거짓으로 간주됩니다.
(하지만 ===
를 사용할 때는 아님)
("" == false) // true
("" === false) // false
값이 있는 문자열은 'true'이므로 다음과 같이 할 수 있습니다.
if (someString) {
// string has a value
} else {
// string is empty or undefined
}
Reference
이 문제에 관하여(JavaScript에서 문자열 비교), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/davejsaunders/comparing-strings-in-javascript-4bj0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
"aardvark" < "animal" // true
"gamma" > "zulu" // false
When comparing strings using <
>
, lowercase letters are considered larger than uppercase.
"aardvark" > "Animal" // true
This is because JavaScript is actually using each character's value in Unicode, where lowercase letters are after uppercase letters.
JavaScript의 빈 문자열은
==
연산자와 비교할 때 거짓으로 간주됩니다.(하지만
===
를 사용할 때는 아님)("" == false) // true
("" === false) // false
값이 있는 문자열은 'true'이므로 다음과 같이 할 수 있습니다.
if (someString) {
// string has a value
} else {
// string is empty or undefined
}
Reference
이 문제에 관하여(JavaScript에서 문자열 비교), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/davejsaunders/comparing-strings-in-javascript-4bj0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)