Почему не проходит условие if? #javascript
Хочу изобрести свой велосипед и попробовать написать функцию глубокого копирования объектов. Начал с примитивного - проверка ключа на тип данных. Если тип данных у ключа - object, то ныряем глубже. При тесте примитивной проверки условие if не выполняется. Что не так? ЗЫ я знаю про библиотеку Lodash.
'use strict';
let user = {
name: 'Иван',
sizes: {
width: 300,
height: 500,
},
},
permissions1 = {
canView: true,
canEdit: false,
},
permissions2 = {
canEdit: true,
};
let clone = Object.assign(user, permissions1, permissions2);
// let cope = _.cloneDeep(clone); // lodash
for (let property in user) {
if (typeof property === 'object') { // Здесь ни одно условие не проходит, хотя typeof user.sizes === object
//...
}
}
alert(typeof user.sizes === 'object'); // true