调用.length时无法读取null的属性“ length”

香蕉香蕉
  • 我已经编写了一个小函数,该函数接受x和o。如果字符串中每个字母的编号相同,则该函数返回true

  • 我的问题是我试图通过此测试,code wars并且测试返回:

    TypeError:无法在XO处读取null的属性“长度”

为什么会这样呢?我该怎么解决?

    function XO(str) {
      x = str.match(/[x]/gi).length
      y = str.match(/[o]/gi).length



       return x == y ? true : false 
    }
加夫格里夫

您需要考虑传递给函数的备用值和空值-您还可以忽略返回值中的三元方程,而只需返回比较运算符的结果即可。

console.log(XO('x')); // returns false since there is 1 'x' and 0 'o'
console.log(XO('o')); // returns false since there is 0 'x' and 1 'o'
console.log(XO('abc')); // returns true since there is 0 'x' and 0 'o'

function XO(str) {
 if(str) {
    x = str.match(/[x]/gi) || [];
    y = str.match(/[o]/gi) || [];
    return x.length == y.length;
  } else {
    return false;
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TypeError:无法读取null的属性“ length”

RegEx结果的“无法读取null的属性'length'”

jQuery Autocomplete响应返回:无法读取null的属性“ length”

错误TypeError:无法在Angular 6中读取null的属性'length'

角度:嵌套形式“无法读取null的属性'length'

TypeError:无法读取null的属性“ length”-节点画布

未被捕获的TypeError:无法读取null的属性“ length”

Flutter:在 null 上调用了 getter 'length'

使用SectionList时无法读取未定义的属性“ length”

无法读取未定义的属性“ length”

Flutter错误:在null上调用了getter'length'

NVL/LENGTH/TRIM 调用的 Oracle PL/SQL 速度与 IS NOT NULL AND != ' '

Flutter-将getter'length'调用为null

我的_showErrorMessage小部件在null上调用了getter'length'

如何修复'NoSuchMethodError:在null上调用getter'length'

未处理的异常:NoSuchMethodError:在 null 上调用了 getter 'length'

Flutter-Nosuchmethoderror调用getter'length'为null

Flutter Qs:在 null 上调用了 getter 'length'

处理/ java:无法在数组类型boolean []上调用length()

我得到:无法在原始类型int上调用length()

导航到另一页时,在null上调用了getter'length'

在调用string.length时string.length是否计算长度

错误:“未捕获的TypeError:无法读取null的属性'length'” Chart.js

(TypeError:在HttpHeaders.applyUpdate处无法读取null的属性“ length”)Angular 5,Http客户端

未捕获的TypeError:存在父对象时,无法读取未定义的属性“ length”

TypeError:访问购物车时无法读取Commerce JS中未定义的属性“ length”

尝试迭代时,嵌套JSON数组抛出“ Uncaught TypeError:无法读取未定义的属性'length'”

无法读取null的属性'replaceWith'-Ajax调用

AngularJS Factory $ http无法读取未定义的属性“ length”