1.类名操作(原生js操作name的增删查)
完成几个 DOM 元素类名操作的工具方法:
addClass(dom, name):给 dom 元素添加类名 name
removeClass(dom, name):把 dom 元素的类名 name 删除
hasClass(dom, name):判断 dom 元素是否有类名 name
答案:
let dom=document.getElementById('dom')
const addClass = (dom, name) => {
dom.classList.add(name)
}
const removeClass = (dom, name) => {
dom.classList.remove(name)
}
const hasClass = (dom, name) => {
return dom.classList.contains(name)
}
addClass(dom,'domname')
2.按下标插入
现在有一个数组存放字符串数据:
['item1','item2','item3','item4','item5']
有另外一个数组存放一组对象:
[ {content:'section1',index:0}, {content:'section2',index:2}]
它每个对象表示的是会往原来的数组的 index 坐标插入 content 数据(index 不会重复):
0 1 2 3 4
item1 itme2 item3 item4 item5
^ ^
section1 section2
最后结果是:['section1','item1','item2','section2','item3','item4','item5']
请你完成 injectSections 函数,可以达到上述的功能:
injectSections( ['item1','item2','item3','item4','item5'], [ {content:'section1',index:0}, {content:'section2',index:2} ])
// => ['section1', 'item1', 'item2', 'section2', 'item3', 'item4', 'item5']
答案:
const injectSections = (items, sections) => {
for(let k of sections) {
items[k.index] = [k.content, items[k.index]];
}
return [].concat(...items);
}
网友评论