検索

ホームページ  >  に質問  >  本文

javascript - 配列のindexofの実装に問題がある?

###それらの中の一つ### リーリー

これらの 2 つの文は何を意味しますか?

リーリー
迷茫迷茫2782日前649

全員に返信(1)返信します

  • 我想大声告诉你

    我想大声告诉你2017-06-14 10:56:26

    Object(this) は、新しいオブジェクトを作成するのではなく、これを Object に変換するものです。Array や Object など、それ自体が Object であるオブジェクトには当然役に立ちません。

    O.length >>> 0这里的三个大于号可不是表示始终大于等于0,而是JS的一个位运算符,表示无符号位移,后面的0表示位移0位,不过JS在执行无符号位移之前,会转成无符号32位整数来计算,所以>>>0表示的就是把O.length正の整数に変換します。

    なぜこれらの 2 つの手順が必要なのでしょうか? JS の配列はすでにオブジェクトではないのでしょうか? array.length 自体は間違いなく非負の整数ではないでしょうか?これは、この関数がユニバーサル関数であり、call を使用して配列以外からも呼び出すことができるためです。 リーリー

    ここでの「abc」は関数本体のこれであり、次の構文を使用するにはオブジェクトにパッケージ化する必要があります。

    リーリー

    そして、Array.prototype.indexOf メソッドは基本型だけでなく、配列以外のオブジェクトにも使用できます。現時点では、長さは自分たちで指定されており、正の整数であることは保証できません。関数内で非配列に変換する必要があります。

    リーリー

    返事
    0
  • キャンセル返事