Функция JavaScript .startWith () не работает в IE, внутри проекта angularjs - PullRequest
0 голосов
/ 28 января 2019

Привет, я использую Angularjs для моего проекта, есть раскрывающийся список поиска национальности.Я хочу отобразить, что набирает на входе и отфильтровать его внутри объекта JSON национальности.Эта часть отлично работает в других браузерах, кроме IE.Есть консольная ошибка "Объект не поддерживает свойство или метод "arsWith" ".это мой код, могу ли я узнать, как добавить «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 = [];
        }
    };

Ответы [ 2 ]

0 голосов
/ 28 января 2019
$scope.searchNationality = function (data) {
    var thereIsData = data != "" && data != undefined;
    var output = thereIsData 
        ? $scope.nationalityList.filter(function (nationality) {
            return nationality.content.toLowerCase().indexOf(data.toLowerCase())) == 0;
            })
        : [];
    $scope.ShowNationalityDropDown = thereIsData;
}
0 голосов
/ 28 января 2019

Вы можете попробовать изменить значение с .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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...