Skip to content

Commit e267b55

Browse files
committed
Minor refactor
1 parent 247a8bd commit e267b55

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

chai-exclude.js

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -53,20 +53,15 @@ function chaiExclude (chai, utils) {
5353
*/
5454
function removeKeysFromObject (obj, props, recursive = false) {
5555
const res = {}
56-
const keys = Object.keys(obj)
57-
const isRecursive = !!recursive
5856

59-
for (let i = 0; i < keys.length; i++) {
60-
const key = keys[i]
61-
const val = obj[key]
57+
for (const [key, val] of Object.entries(obj)) {
58+
if (props.includes(key)) continue
6259

63-
const hasKey = props.indexOf(key) === -1
64-
65-
if (isRecursive && hasKey && isObject(val)) {
60+
if (recursive && isObject(val)) {
6661
res[key] = removeKeysFromObject(val, props, true)
67-
} else if (isRecursive && hasKey && isArray(val)) {
62+
} else if (recursive && isArray(val)) {
6863
res[key] = removeKeysFromArray(val, props, true)
69-
} else if (hasKey) {
64+
} else {
7065
res[key] = val
7166
}
7267
}

0 commit comments

Comments
 (0)