![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js杂文
马小MS
这个作者很懒,什么都没留下…
展开
-
扁平数据转tree
let arr = [{ id: 1, name: '部门1', pid: 0 }, { id: 2, name: '部门2', pid: 1 }, { id: 3, name: '部门3', pid: 1 }, { id: 4, name: '部门4', pid: 3 }, { id: 5, name: '部门5', pid: 4 }]; const idMap = arr.reduce((sum, item, idx) => { sum[item.id] = idx; retur.原创 2021-07-14 17:24:22 · 143 阅读 · 1 评论 -
vue绑定class使用计算属性,避免在html写复杂逻辑
const prefixCls = 'className'; data () { return { type: 'select' }; }, computed: { classes () { return [ `${prefixCls}`, { [`${prefixCls}-select`]: this.type === 'select',原创 2020-12-21 11:27:21 · 441 阅读 · 0 评论 -
原生js实现触底加载下一页(2不引用VUE)
定义一个scroll容器 <body> <div id="app"> </div> </body> javascript var data =[1, 2, 3, 4]; function render() { document.getElementById('app').innerHTML = ''; let tempHtml = '' data.forEach(item => { tempHtml原创 2020-09-22 16:07:31 · 329 阅读 · 0 评论 -
原生js实现触底加载下一页
简单的布局 <div id="app" class="container"> <div class="block" v-for="(item, index) in blocks" :key="index"> {{item}} </div> </div> js需要先引入vue <script src="https://cdn.jsdelivr.net/npm/vue"></script&原创 2020-09-22 08:31:02 · 832 阅读 · 1 评论 -
增强型for循环
普通for循环写着麻烦,但是是性能最好 foreach循环,简洁,但是性能不及for 所以封装一下for循环,既简洁又高性能 自封装版forEach function enhanceFor(obj, func) { for (let i = obj.length - 1; i > -1; i--) { func(obj[i], i); } } 性能测试 const testArray = []; for (i = 1000000; i > 0; i--原创 2020-09-14 23:01:02 · 98 阅读 · 0 评论