function setProp(dom, key, value) { if (/^on/.test(key)) { dom[key.toLowerCase()] = value; } else if (key === 'style') { if (value) { for (let styleName in value) { if (value.hasOwnProperty(styleName)) { dom.style[styleName] = value[styleName]; } } } } else { dom.setAttribute(key, value); } return dom;}export function setProps(elem, oldProps, newProps) { for (let key in oldProps) { if (key !== 'children') { if (newProps.hasOwnProperty(key)) { setProp(elem, key, newProps[key]); } else { elem.removeAttribute(key); } } } for (let key in newProps) { if (key !== 'children') { setProp(elem, key, newProps[key]) } }}