如果响应没有msgs[0]
属性,则以下测试会生成错误。
if response.msgs[0] === "published" { ... }
错误是:
Uncaught TypeError: Cannot read property '0' of undefined
如何重写测试以生成错误?如果没有msgs[0]
属性,我希望测试评估为false
。
答案 0 :(得分:7)
响应没有msgs [0]属性
这是不正确的。它会抛出一个错误,因为它没有msgs
属性,而不是因为它没有0
属性。
在测试msgs
之前,您需要测试0
是否存在。
if (response.msgs && response.msgs[0] === "published") { ... }
答案 1 :(得分:3)
测试首先定义response.msgs
:
if response.msgs && response.msgs[0] === "published" { ... }