'TypeError: Cannot read property 'hoge' of undefined'
結論
- 'TypeError: Cannot read property 'includes' of undefined'の原因は、3行目のi<=emailList.length。<=(未満またはそれと同じ)を<(未満)に変えたらエラーが消えた、つまり、「配列にある要素の数以上の何かをさらにincludeメソッドに突っ込みましたけど、そんなの困るよ!」ということなのかもしれない。
TypeErrorは型エラーなので、includeメソッドに間違った型で実行しようとしてますよという意味なので、詳しくはわからないけど、これも配列の要素にはない何かを突っ込もうとしたので、その何かが型エラーになったのかもしれない。
function validEmailList(emailList){ array = []; // i<=email.length(これは配列の要素以上の物を突っ込む) for(let i = 0; i< emailList.length; i++){ if(emailList[i].includes(" ") &&emailList[i].match(/[@]/g) == Array ["@"]&& emailList[i].indexOf('@') < emailList[i].indexOf('.') === 0){ array.push[emailList[i]]; } } return array; }