refactoring
This commit is contained in:
@@ -1,16 +1,18 @@
|
||||
import { AnyObject } from '../types'
|
||||
|
||||
/**
|
||||
* Remove a property or an array of properties from an object
|
||||
* @param obj Object
|
||||
* @param key Key to remove
|
||||
*/
|
||||
export default function deleteProps(obj: { [key: string ]: any }, propOrProps: string | string[]) {
|
||||
export default function deleteProps(obj: AnyObject, propOrProps: string | string[]) {
|
||||
const props = typeof propOrProps === 'string'
|
||||
? [propOrProps]
|
||||
: propOrProps
|
||||
|
||||
return Object
|
||||
.keys(obj)
|
||||
.reduce((newObj: { [key: string ]: any }, prop) => {
|
||||
.reduce((newObj: AnyObject, prop) => {
|
||||
if (!props.includes(prop)) {
|
||||
newObj[prop] = obj[prop]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user