オブジェクトが反復可能な状態でない時にスプレッド構文(…)を使って内容を確認すると「Uncaught TypeError: Found non-callable @@iterator」のエラーが表示されます。
本記事では、JavaScriptのエラー「Uncaught TypeError: Found non-callable @@iterator」が表示された時の対処法について解説しています。
JavaScriptの学習におすすめ書籍
1冊ですべて身につくJavaScript入門講座

メリット
- 誰でも分かるように嚙み砕いて説明してくれる
- アニメーションの知識が深く学べる
- 1つのWebサイトを作りながら学べる


Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!



初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!
全プログラマー必見!
変数名/関数名にもう悩まない!
変数名/関数名にもう悩まない!
リーダブルコード


メリット
- 美しいコードが書けるが自然と書けるようになる
- 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)


目次
エラーの対処法
エラーの対処はとても簡単でスプレッド構文を使う変数に対して{}で囲うだけです。
const sampleObj = {
a: 1,
b: 2,
};
console.log({ ...sampleObj }); // -> {a: 1, b: 2}
console.log(...sampleObj); // -> Uncaught TypeError: Found non-callable @@iterator