javascript - 什么时候x不等于x?

标签 javascript unicode

在审核“verb”(一个 NURB 库)的 Javascript 版本时,我偶然发现了这种方法:

HxOverrides.cca = function(s,index) {
  var x = s.charCodeAt(index);
  if(x != x) return undefined;
  return x;
};

我对这种情况感到困惑,

if(x != x)

这什么时候是真的?

最佳答案

further reading ,我发现了Javascript方法,“s.charCodeAt(index)”返回字符串's'中第(index)个字符的Unicode值。具体来说:

If index is out of range, charCodeAt() returns NaN.

在控制台中,我测试了:

NaN == NaN

我发现这是假的。因此,对于以下问题:

“什么时候x不等于x?”

答案(至少在 Javascript 中)是:

“当 x 为 NaN(不是数字)时,x != x”。

关于javascript - 什么时候x不等于x?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64197955/

相关文章:

javascript - Rails 在 View 之间共享 javascript

javascript - 有选择地支持某些浏览器

r - 使用 unicode 字符作为形状

mysql - php mb_detect_encoding 在 mysql 中等效

javascript - 如何检索 HTML 元素的实际宽度和高度?

javascript - ng click inside li <a> 元素在 ng-repeat 中不起作用

javascript - 有人见过用普通 JavaScript 制作的水平滚动/滑动效果吗?

c++ - SQLGetDiagRec 导致 Unicode 发布版本崩溃

sql-server - 在 SQL Server 2008 中从 xml 数据类型转换为 nvarchar 时,Unicode 文本被损坏?

html - 在纯文本 div 中插入新行