4

商品リストがあり、入力パラメーターで商品リストを検索したい。containsそのため、製品リストの入力文字列をスカーリングするために使用していました。Webページで正常に動作します。しかし、モバイル Web ページで同じページを開くと、機能しません。そして、定義されていない「含む」というエラーを出します。

if(productlist[i].name.toLowerCase().contains(input_val.toLowerCase()))

    --my business logic--

その後、私はindexOfそれを試してみましたが、どちらの場合もうまくいきました。

if(productlist[i].name.toLowerCase().indexOf(input_val.toLowerCase()) !== -1)
    --my business logic --

.contains の問題は何ですか??

4

1 に答える 1

2

この Polyfill を使用します ( 参照 : MDN )

if(!('contains' in String.prototype)) {
  String.prototype.contains = function(str, startIndex) { 
      return -1 !== String.prototype.indexOf.call(this, str, startIndex); 
  };
}

使用できますか...の互換性表を参照してください。

更新:また、この回答を確認することもできます。

于 2013-07-20T18:31:47.393 に答える