皆様 いつも大変お世話になっております。
====質問====
Alert文の有無だけで、動作が変わってくる(配列の変数の内容が変わってくる?)ことなどあり得るか?あるとした場合、どういうケースで起こるか?

====詳細====
以下コーディングにあるdowntotalCalc関数が、初回に呼ばれた際のみ期待動作をしてくれません。
その関数内で、動作させたい根幹部分前に、Alert文を記載すると、無事根幹部分を通過します。しかしAlert文をコメントアウトすると、根幹部分を通過してくれません!!
Alert文自体は、現在生じている『初回だけ根幹部分を通過しない』要因を特定するためのものです。根幹部分に入る・入らないは、変数の値が設定されている・されてないの条件式で作用するようコーディングしています。
しかしAlert文の有無だけで現在動作が変わってきてしまっているので、配列の変数内容の設定がこれにリンクして行われているの?と疑ってしまった私です。

Table明細上のINPUT=数量枠に値が入ったら、同明細のラベル列にDBからの単価を表示(Ajax)、また別のラベル列には数量に単価を乗じ金額を表示。
Tableの末端部分には合計覧が存在するので、こちらに明細の金額総合計を表示したい、というのが狙いです。(これがされない)

元をたどれば、Ajaxで達成される明細中の単価取得に関連した動きなので、やはりこれが起因しているのでしょうか?setTimerとかで逃げられる事象なのでしょうか...

//数量のテキストボックスからフォーカスが外れたら
$("input[name=amount]").on("blur",function() {

    //【省略】 Table明細上の数量枠(INPUT)に値が入ったら、横のラベルに金額を表示

    //【問題の関数へ】上記動作(変化)と併せ、Table末端部分に、総合計を表示したい!! 
    downtotalCalc();
});


//問題の関数(実験中)
function downtotalCalc () {
    var $totalp = $("label[name=totalp]");

    console.log($totalp);
//$$    alert("###今夜が山田①###");  //【当該関数1回目の動作がこの行次第で変わってくる、下のFor文が通過しない】
    //1行目は非表示になっているため指数[1]でループ開始
    for (var i = 1; i < $totalp.length; i++) {
        if ($totalp.eq(i).html() != "" && $totalp.eq(i).html() != 0 && $totalp.eq(i).html() != "0") {
            alert("###今夜が山田② [" + i + "] ###");
        }
    }
    alert("###今夜が山田③###");
}