javascript 外语字符串比较

标签 javascript

我有一些旧代码,没有任何注释,它们使用 JavaScript 的方式与我以前使用它的方式不同。下面是对字符串进行数学运算。

if ((toFind > nextOptionText) && (toFind < lookAheadOptionText))

我发现了类似这样的问题 - 基本上表明“a”<“b”:

how exactly do Javascript numeric comparison operators handle strings?

但是在我的示例中,我有一些特殊字符需要与之比较。在我的代码中,上面的参数是:

if (("A" > "+") && ("A" < ">EINFUHRUNG ZUM"))

这等于 TRUE - 对于我来说,我需要它等于 FALSE,但我不是问如何使其为 false,我真的只是想了解编写此代码的开发人员在想什么以及如何做上面的 if 语句有效。

显然我也在处理外语(德语) - 我很确定这段代码是在应用程序成为多语言之前编写的。
如果我应该考虑其他建议,请告诉我(例如使用区域设置或进行不同类型的比较)。

最佳答案

我的快速测试表明,正如预期的那样,此代码的计算结果为 FALSE。

if (("A" > "+") && ("A" < ">EINFUHRUNG ZUM")) {
    alert('true')
} else {
    alert( 'false') 
}

一般来说,比较照常进行according to the character codes ,因此“A”>“>”和“A”>“+”。

要将字符串与非 ASCII 字母进行比较,您可能会发现 this reference有用。

关于javascript 外语字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48104499/

相关文章:

javascript - 将 JQuery owl-carousel 与 Angular 单页应用程序相结合

javascript - jquery如何让一个元素在动画结束后回到初始位置

javascript - 如何替换 TextBox 中的 <br/>

javascript - 任何人都可以解释一下字符串和数字比较在 javascript 中是如何工作的吗?

javascript - 使用 jQuery 设置链接悬停属性

java - AngularJS - 通过 AJAX 下载文件

javascript - 当 prop 值未定义时,设置一个值会导致警告

javascript - JQuery/Javascript 获取对象在对象数组中的位置

javascript - 用于 Retina 显示屏的 Chrome 扩展屏幕截图部分图像裁剪

javascript - CRM 2011 OData关系查询教程