Use more for-of

This commit is contained in:
John-David Dalton
2017-04-03 10:35:26 -07:00
parent f3957ac416
commit 3e2b0bb763
7 changed files with 18 additions and 33 deletions

View File

@@ -19,14 +19,12 @@ const LARGE_ARRAY_SIZE = 200
* @returns {Array} Returns the new array of filtered values.
*/
function baseDifference(array, values, iteratee, comparator) {
let index = -1
let includes = arrayIncludes
let isCommon = true
const { length } = array
const result = []
const valuesLength = values.length
if (!length) {
if (!array.length) {
return result
}
if (iteratee) {
@@ -42,8 +40,7 @@ function baseDifference(array, values, iteratee, comparator) {
values = new SetCache(values)
}
outer:
while (++index < length) {
let value = array[index]
for (let value of array) {
const computed = iteratee == null ? value : iteratee(value)
value = (comparator || value !== 0) ? value : 0

View File

@@ -8,11 +8,9 @@
*/
function baseSum(array, iteratee) {
let result
let index = -1
const { length } = array
while (++index < length) {
const current = iteratee(array[index])
for (value of array) {
const current = iteratee(value)
if (current !== undefined) {
result = result === undefined ? current : (result + current)
}

View File

@@ -15,12 +15,7 @@ function copyObject(source, props, object, customizer) {
const isNew = !object
object || (object = {})
let index = -1
const length = props.length
while (++index < length) {
const key = props[index]
for (const key of props) {
let newValue = customizer
? customizer(object[key], source[key], key, object, source)
: undefined

View File

@@ -38,9 +38,7 @@ function cond(pairs) {
})
return (...args) => {
let index = -1
while (++index < length) {
const pair = pairs[index]
for (const pair of pairs) {
if (pair[0].apply(this, args)) {
return pair[1].apply(this, args)
}

View File

@@ -12,12 +12,11 @@
* // => { 'a': 1, 'b': 2 }
*/
function fromPairs(pairs) {
let index = -1
const length = pairs == null ? 0 : pairs.length
const result = {}
while (++index < length) {
const pair = pairs[index]
if (pairs == null) {
return result
}
for (const pair of pairs) {
result[pair[0]] = pair[1]
}
return result

View File

@@ -19,12 +19,11 @@ import isSymbol from './isSymbol.js'
*/
function maxBy(array, iteratee) {
let result
let index = -1
const length = array == null ? 0 : array.length
while (++index < length) {
if (array == null) {
return result
}
for (const value of array) {
let computed
const value = array[index]
const current = iteratee(value)
if (current != null && (computed === undefined

View File

@@ -19,12 +19,11 @@ import isSymbol from './isSymbol.js'
*/
function minBy(array, iteratee) {
let result
let index = -1
const length = array == null ? 0 : array.length
while (++index < length) {
if (array == null) {
return result
}
for (const value of array) {
let computed
const value = array[index]
const current = iteratee(value)
if (current != null && (computed === undefined