angularjs项目中的JavaScript .startWith()函数在IE中不起作用

Mahesh Sanjeewa |

您好,我为我的项目使用Angularjs,有国籍搜索下拉列表。我想映射在Input上键入的内容,并在国籍JSON对象中对其进行过滤。这部分在IE以外的其他浏览器中都可以正常工作。出现控制台错误“对象不支持属性或方法'startsWith'”。这是我的代码,我可以为我的代码为此问题添加“ String.prototype.startsWith”吗?

$scope.searchNationality = function (data) {
        var output = [];
        if (data != "" && data != undefined) {
            $scope.ShowNationalityDropDown = true;

            for (var i = 0; i < $scope.nationalityList.length; i++) {
                if ($scope.nationalityList[i].content.toLowerCase().startsWith(data.toLowerCase())) {
                    output.push($scope.nationalityList[i]);
                }
            }
            $scope.nationalityListSearchResults = output;
        } else {
            $scope.ShowNationalityDropDown = false;
            $scope.nationalityListSearchResults = [];
        }
    };
神圣龙

您可以尝试更改.startsWith.indexOf因为它与IE浏览器的低版本兼容。如果.indexOf返回0,则该字符串位于调用该函数的字符串的第一个位置,当您无法使用.startsWith()时,可以使用该字符串。

const str = "Hey this is a sample string!"
console.log(str.indexOf("Hey") === 0)
console.log(str.indexOf("sample") === 0)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章