[英]Getting TypeError: Cannot set property 'data' of undefined
壓縮時,我很難找到在代碼中定義數據的錯誤。 我為我的代碼編寫了4個測試,而其中3個已經通過。 我在測試3時遇到錯誤。
添加此功能可以解決此問題,但我正在嘗試使其簡潔。
blockchain.addBlock({data: 'Bears'});
blockchain.addBlock({data: 'Beets'});
blockchain.addBlock({data: 'Battlestar Galatica'});
目前這是我收到錯誤時的內容。
describe('and the chain contains a block with an invalid field',()=>{
it('returns false', () => {
blockchain.chain[2].data = 'some-bad-and-evil-data';
expect(Blockchain.isValidChain(blockchain.chain)).toBe(false);
});
});
FAIL ./blockchain.test.js
● Blockchain › isValidChain() › and the chain contains a block with an invalid field › returns false
TypeError: Cannot set property 'data' of undefined
54 | it('returns false', () => {
55 |
> 56 | blockchain.chain[2].data = 'some-bad-and-evil-data';
| ^
57 |
58 | expect(Blockchain.isValidChain(blockchain.chain)).toBe(false);
59 | });
at Object.it (blockchain.test.js:56:9)
似乎在blockchain.chain
索引2沒有元素。 通常,這是嘗試訪問數組中元素的字段時出現此錯誤的最可能原因。
換句話說
someCollection[index].someField
如果看到包含Undefined
, NullReference
, NullPointer
關鍵字的錯誤,則您的集合沒有index + 1
很多元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.