在 JavaScript 中比较两个字符串

发布于 2022-07-29 12:46:34 字数 2251 浏览 229 评论 0

JavaScript 使比较字符串变得容易。 首先,要比较两个字符串是否完全相等,尽量请使用 ===不要使用 ==

const str1 = '1st string';
const str2 = str1;
const str3 = '2nd string';

str1 === str2; // true
str1 === str3; // false

// Always use `===`, because `==` can have some surprises
'1' == 1; // true
'2' == 2; // true

<>

使用 <> 根据 Unicode 排序顺序 。 这意味着数字总是 < 大写字母,大写字母总是 < 小写字母。

const str1 = '0';
const str2 = 'A';
const str3 = 'Z';
const str4 = 'a';

str1 < str2; // true
str2 < str3; // true
str3 < str4; // true

当比较长度大于 1 的字符串时,JavaScript 会逐个字符进行比较。 如果两个字符串都以相同的字符开头,JavaScript 会比较每个字符串的第二个字符。 字符串的结尾总是 < 任何字符。

// Empty string '' is `<` all other strings
const str1 = '';
const str2 = 'A';
const str3 = 'A1';
const str4 = 'Z0';

str1 < str2; // true
str2 < str3; // true
str3 < str4; // true

<> 操作符在字符串与非字符串进行比较时,将返回 false

1 < 'A'; // false
'A' < 1; // false

null < 'A'; // false
'A' < null; // false

undefined < 'A'; // false
'A' < undefined; // false

排序

默认情况下, Array#sort() 函数将数组中的所有值转换为字符串,然后按 Unicode 排序顺序对它们进行排序 。 这 sort() 函数放置 nullundefined 数组末尾的值。

1 < 'A'; // false
'A' < 1; // false

null < 'A'; // false
'A' < null; // false

undefined < 'A'; // false
'A' < undefined; // false

<=>=

使用时要小心 <=>=,因为这些使用相同类型的强制 == 做。

'1' <= 1; // true

 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

0 文章
0 评论
21 人气
更多

推荐作者

一念一轮回

文章 0 评论 0

脱离于你

文章 0 评论 0

春夜浅

文章 0 评论 0

吃兔兔

文章 0 评论 0

晨曦

文章 0 评论 0

kevin123

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文