0
Array.filter 메서드를 사용하여 배열을 필터링하는 동안 멈추었습니다. String indexOf 항상 -1을 반환합니다.
나의 코드로 봐 주시기 바랍니다 :$scope.products = CachedData.Products.filter(function (item) {
var itemNameSlug = Helpers.slug(item.Name); // eg: product100
var keywordSlug = Helpers.slug($scope.keyword); // eg: p, pr, pro, duct etc...
var result = itemNameSlug.indexOf(keywordSlug);
console.log(result); // always -1
return result > -1;
});
내가 문자로 키워드를 입력하면, 항상 하늘의 배열 반환 (즉, 같이 IndexOf 반환 -1). 숫자를 입력하면 예는 1 또는 10 또는 100 또는 00입니다. 올바른 결과가 나타납니다.
왜?
도움이 될 것입니다. 감사합니다
console.log ($ scope.keyword, Helpers.slug ($ scope.keyword))의 결과는 무엇입니까? –
둘 다 문자열입니다. 제 코드의 주석을 확인하십시오 – trinvh
분명히 그들은 양쪽 문자열이 아닙니다. 그렇지 않으면 항상 결과가 -1이되지 않을 것입니다 –