javascript - 无法读取 null、javascript 的属性“长度”。检查给定的字符串是否包含字母:p & t
问题描述
我正在尝试调试我的 JS 迷你项目。其中一些显示:
未捕获的类型错误:无法在任务(xx)处读取 null 的属性“长度”
这些迷你项目有效,但我想删除所有错误。
这个任务是关于:检查给定的字符串是否包含相等数量的 p 和 t。
我关注了该错误的消息,据我所知,如果变量的长度为 null 或 0,这意味着这是未定义的并且无法验证。所以,不成功,我尝试使用这段代码:
if (p < 0 || t< 0)
or
if (task55word == null)
基本代码在这里:
task55 = () => {
const task55word = document.getElementById("task55").value;
const task55ans = document.getElementById("task55ans")
const wordP = task55word.toLowerCase().match(/p/g);
const wordT = task55word.toLowerCase().match(/t/g);
const p = wordP.length;
const t = wordT.length;
if (p == t) {
task55ans.textContent = 'equal';
} else {
task55ans.textContent = 'not equal';
}
};
我做错了什么?
解决方案
试试这个代码。如果没有匹配则match
返回。null
task55 = () => {
const task55word = document.getElementById("task55").value;
const task55ans = document.getElementById("task55ans");
const wordP = task55word.toLowerCase().match(/p/g) || "";
const wordT = task55word.toLowerCase().match(/t/g) || "";
const p = wordP.length;
const t = wordT.length;
if (p == t) {
task55ans.textContent = 'equal';
} else {
task55ans.textContent = 'not equal';
}
};
推荐阅读
- php - 为什么我不能将我的表单添加到我的 MySQL 数据库中?
- python - 如何将训练好的模型转换为函数?
- r - 无法使 sen2r 函数工作,缺少一些参数?
- javascript - 给定一个数组,编写一个返回该数组所有可能的三元组/序列的函数?JavaScript
- python - 仅支持有效的不记名身份验证 - Python - Spotify API
- ruby-on-rails - Heroku 环境变量未在 javascript 中为 React/Rails 应用程序设置
- sql - 使用 SQL 提取 XML 数据
- flutter - Flutter 从“Future”返回“Widget”
" - asp.net-core - 在 asp.net core 3.1 中具有密码保护链接的匿名用户 - ClaimsPrinciple/cookie 是最好的方法吗?
- python - 迭代数据框行时将列表添加到列