関数内で 6 つの要素を含む配列変数を定義し、関数内でコールバック関数を呼び出しました。コールバック関数では配列変数の値にアクセスできませんが、長さ属性にはアクセスできます。とても混乱していて、どう解決すればいいのか分かりません。
Book.getBookByISBN() は他のモジュールで定義した関数です
光阴似箭催人老,日月如移越少年。
bookARR[i]をコールバックに入れる
その理由は、実際には、Book.getBookByISBN() 関数でコールバック呼び出しを定義する場所に bookArr[i] を渡すためです
これは典型的な非同期問題であり、 i のスコープは依然としてその中にあります。 非同期で待ってるからgetBookByISBN 方法调用callback的时候 i=bookARR.length。这已经越界了,所以是undefined.
getBookByISBN
i=bookARR.length
undefined
解決策: 1. 閉鎖2.let
だって
リーリーそれで
リーリーbookARR[i]をコールバックに入れる
その理由は、実際には、Book.getBookByISBN() 関数でコールバック呼び出しを定義する場所に bookArr[i] を渡すためです
。これは典型的な非同期問題であり、 i のスコープは依然としてその中にあります。
非同期で待ってるから
getBookByISBN
方法调用callback的时候i=bookARR.length
。这已经越界了,所以是undefined
.解決策:
1. 閉鎖
2.let