判断字符串是否以特定字符开头,字符比较 vs 字符unicode比较 的区别?
看Vue源码时发现了这个问题
// Vue 2.0 src/core/util/lang.js
/**
 * Check if a string starts with $ or _
 */
export function isReserved(str: string): boolean {
    const c = (str + '').charCodeAt(0)
    return c === 0x24 || c === 0x5F
}如题所述,和 c[0] === '$' || c[0] === '_' 相比
回复
1个回答
test
2024-06-30
从功能上来说,没有差别;从性能上来说,差别也是微乎其微
一般使用 unicode 比较,是为了 多语言 环境下的更全面和准确的字符匹配能力。vue 虽然在国外相对 react 流量少了点,但毕竟是个国际化框架,在涉及编码的问题上也会综合考虑
unicode 编码支持大部分语言的字符,自然容易成为开源项目的首选编码
对于普通开发来说,直接进行字符串对比就行了,怎么简单怎么来是最好的方式
回复
适合作为回答的
- 经过验证的有效解决办法
 - 自己的经验指引,对解决问题有帮助
 - 遵循 Markdown 语法排版,代码语义正确
 
不该作为回答的
- 询问内容细节或回复楼层
 - 与题目无关的内容
 - “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容