let objData = {name: '小草莓',age: 18,sex: '女',hobby: ['学习']}let objDefault = {name: '小草莓',age: 18}
/*** 从对象中排除指定的属性并返回新对象* @param {Object} originObj 源对象* @param {Array} arr 指定排除的属性名数组,如:['name', 'text']* @returns {Object}*/function omit(originObj, arr) {if (!originObj) {return {}}if (!arr || !Array.isArray(arr) || !arr.length) {return originObj}const res = {}Object.keys(originObj).forEach(k => {!arr.includes(k) && (res[k] = originObj[k])})return res}let keys = Object.keys(objDefault)console.log('omit最后结果', omit(objData, keys))// omit最后结果 { sex: '女', hobby: ['学习'] }