javascript - 空字符串的长度怎么可能大于 0?
问题描述
我在尝试运行 JS 条件来检查空字符串时遇到了这个错误。在 Chrome 调试器中,空字符串的计算长度为 1,有时甚至为 2。它发生在 react 应用程序中。我对原型如何仍然正常工作感到非常迷茫,但正常长度方法却没有。
解决方案
如果字符串包含非正常字符的字符,则当您询问其值时,该字符串可能会显示为空。这些字符串可以通过String.fromCharCode
方法或隐含的 like生成'\x0d'
。Enter 等字符将显示为空字符串。charCodeAt
您可以使用该方法检查不可见字符。
正如 Matus 所示,这将复制有问题的行为:
v = '\x0d'
console.log(v); // ""
console.log(typeof v); // "string"
console.log(v[0]); // ""
console.log(v.length); // "1"
推荐阅读
- vue.js - Vue-router 共享组件,带有路由参数更改以过滤结果
- python - 当分配给它的变量发生变化时,自身变量会发生变化
- powershell - 在变量属性上过滤 Where-Object
- javascript - 在 datepicker onchange 函数之后,使用 javascript/ajax 调用将值发送到相同的 php 页面而不刷新
- visual-studio - 为什么 SSIS Excel 目标编辑器会创建两个 Excel 工作表?
- java - 如何为 Spring Boot RESTful Web 服务配置多级身份验证?
- javascript - 如何检查字符串是否只包含一个空格?
- google-sheets - 使用 dataLabel 创建 STEPPED_AREA 图表
- python - 如何将图标添加到 cx_Freeze 可执行文件?
- python - 使用指数减法评估 symfit 模型时出现 AttributeError