字符串包含不在IE中工作

use*_*428 3 javascript internet-explorer

我正在尝试使用contains来查找字符串中是否出现短语下面的代码在FF和Chrome中工作正常,但是IE8-10会返回错误.

SCRIPT438:对象不支持属性或方法'contains'

var str = "This is a string";
if(str.contains("string")){
    alert('Yes'};
}
Run Code Online (Sandbox Code Playgroud)

不确定IE为什么会抛出错误,所以任何帮助都会非常感激.

Poi*_*nty 9

.contains()功能是旧版Internet Explorer不支持的ES2015功能.

MDN页面有一个填充工具:

if ( !String.prototype.contains ) {
    String.prototype.contains = function() {
        return String.prototype.indexOf.apply( this, arguments ) !== -1;
    };
}
Run Code Online (Sandbox Code Playgroud)

像这样的问题的一般指南:MDN something在Google搜索框中输入.如果您没有找到结果,那么JavaScript Universe中可能不存在"某些东西".如果你这样做,那么你很有可能找到你在那里寻找的答案.