单行设置 DOM 属性

是否可以将以下内容重写为单个表达式?我喜欢用 vanilla js 编写代码,并希望我的代码不那么冗长


const div = document.createElement("div");

div.property1 = 1,

div.property2 = 2,

document.body.appendChild(div);


富国沪深
浏览 96回答 2
2回答

暮色呼如

您可以,但代价是创建另一个对象并通过以下方式循环其属性Object.assign:document.body.appendChild(Object.assign(document.createElement("div"), {property1: 1, property2: 2}));带换行符:document.body.appendChild(    Object.assign(        document.createElement("div"),        {property1: 1, property2: 2}    ));无偿的活生生的例子:;-)document.body.appendChild(    Object.assign(        document.createElement("div"),        {            className: "example",            id: "ex",            textContent: "Hi there"        }    ));.example {    color: green;}#ex {    font-weight: bold;}

长风秋雁

为了兴趣。根据 TJ 的回答,如果使用辅助函数,您的冗长可以少得多:body.ac(as(ce("div"), { property1: 1, property2: 2 }));
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript