有人给我发了这封电子邮件:
为什么这两个警告都是假的?
alert('a?' == 'a');
alert('a?' === 'a');
Run Code Online (Sandbox Code Playgroud)
这是一个演示
cam*_*aca 14
a每个中的第一个实际上并不简单a.如果您将光标放在它后面并按下Backspace,则删除"something",然后返回true.
我复制了你的a字符串,这是我在运行这段代码时得到的:
$a='a?';
var_dump($a);
string(4) "a?"
Run Code Online (Sandbox Code Playgroud)
看到这里有什么问题?字符串长度为4.
此外,这:
echo base64_encode($a);
Run Code Online (Sandbox Code Playgroud)
..returns:
YeKAjA==
Run Code Online (Sandbox Code Playgroud)
对于带字母的简单字符串a,它应该只是YQ==.
额外的角色被称为"ZERO WIDTH NON-JOINER".
对于第一个'a'控制台说:
'a?'.charCodeAt(0)
97
'a?'.charCodeAt(1)
8204
Run Code Online (Sandbox Code Playgroud)
8204似乎是零宽度非连接器的unicode值
虽然第二个:
'a'.charCodeAt(0)
97
'a'.charCodeAt(1)
NaN
Run Code Online (Sandbox Code Playgroud)
不同的字符串是不同的自然:).
| 归档时间: |
|
| 查看次数: |
12794 次 |
| 最近记录: |