相关疑难解决方法(0)

为什么使用for比some()或filter()更快

我尝试了两种不同的方式做某事,我对性能结果感到惊讶:

我有一个函数的2个版本:

使用for:

$scope.hasBlockResult = function (IS, area, block) {
    if (!block)
        return false;
    for (var i = 0; i < $scope.filteredCartoList.length; i++) {
        if ($scope.filteredCartoList[i].informationSystem === IS 
            && $scope.filteredCartoList[i].area === area 
            && $scope.filteredCartoList[i].block === block)
            return true;
    }
    return false;
};
Run Code Online (Sandbox Code Playgroud)

并使用some()功能:

$scope.hasBlockResult = function (IS, area, block) {
    if (!block)
        return false;

    return ($scope.filteredCartoList.some(function (carto) {
        if (carto.informationSystem === IS && carto.area === area && carto.block === block)
            return true;
        return false;
    }));
}; …
Run Code Online (Sandbox Code Playgroud)

javascript performance angularjs

1
推荐指数
2
解决办法
8885
查看次数

标签 统计

angularjs ×1

javascript ×1

performance ×1