比较十六进制字符串全部 return false
comparing hex string all return false
我正在比较下面的十六进制字符串 value
:
'0xC6b250Dd4dD3372C6602200C78D900818627eC9e'
'0xC6b250Dd4dD3372C6602200C78D900818627eC9e'
'0x570324fd11272F2F980AfeBf09D680aC9F136B1k'
使用:
if(value === '0x570324fd11272f2f980afebf09d680ac9f136b1k');
为什么所有 return 都是假的?因为最后一个是一样的?
JavaScript 字符串比较区分大小写。在与 value.toLowerCase()
.
比较之前,您可以通过转换为小写字符来规范化值
示例:
const values = ['0xC6b250Dd4dD3372C6602200C78D900818627eC9e', '0xC6b250Dd4dD3372C6602200C78D900818627eC9e', '0x570324fd11272F2F980AfeBf09D680aC9F136B1k'];
console.log(values.map(value => value.toLowerCase() === '0x570324fd11272f2f980afebf09d680ac9f136b1k'));
我正在比较下面的十六进制字符串 value
:
'0xC6b250Dd4dD3372C6602200C78D900818627eC9e'
'0xC6b250Dd4dD3372C6602200C78D900818627eC9e'
'0x570324fd11272F2F980AfeBf09D680aC9F136B1k'
使用:
if(value === '0x570324fd11272f2f980afebf09d680ac9f136b1k');
为什么所有 return 都是假的?因为最后一个是一样的?
JavaScript 字符串比较区分大小写。在与 value.toLowerCase()
.
示例:
const values = ['0xC6b250Dd4dD3372C6602200C78D900818627eC9e', '0xC6b250Dd4dD3372C6602200C78D900818627eC9e', '0x570324fd11272F2F980AfeBf09D680aC9F136B1k'];
console.log(values.map(value => value.toLowerCase() === '0x570324fd11272f2f980afebf09d680ac9f136b1k'));