Conus,
если хочется через атрибут, а не через свойство.
строка 12 изменено имя свойства.
строка 22 сотрёт стиль в строке 8, так как установит новое значение!!!
setAttribute это установка значения атрибута.
если нужно сохранить прежнее значение
var css = html.getAttribute('style')+';';
<!doctype html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<div style="border: 1px dashed Gray; padding: 5px">test</div>
<script>
var html = document.querySelector('div');
var htmlAttribute = {style : {
'background-color': '#EDE6E6',
'box-shadow' : ' 1px -1px 5px 3px rgba(0, 0, 0, .2)'
}};
if('style' in htmlAttribute )
{ var css = '';
for( var i in htmlAttribute['style'] )
{
var d = htmlAttribute['style'][i];
css += `${i}:${d};`
}
html.setAttribute('style', css)
}
</script>
</body>
</html>