## 事象
1.3Mbくらいで読みこみ失敗するらしい
## 再現確認
[住所データCSV【住所\.jp】](http://jusyo.jp/csv/new.php)を使う。全国版をダウンロード。
以下のエラーが表示される。
![[Pasted image 20211120150557.png]]
## 原因
以下の処理でpushの引数が膨大になっていたから。
```typescript
this.customTokens.push(
...str.split(/(\r\n|\n)/).filter((x) => x !== "")
);
```
## 対策
コール[[スタック]]を使わないように実装を変更する。
```typescript
for (const line of str.split(/(\r\n|\n)/)) {
if (line !== "") {
this.customTokens.push(line);
}
}
```
## 参考
- [javascript \- "RangeError: Maximum call stack size exceeded" Why? \- Stack Overflow](https://stackoverflow.com/questions/22123769/rangeerror-maximum-call-stack-size-exceeded-why)