题解 | #数组过滤#,策略模式

数组过滤

https://www.nowcoder.com/practice/46d607f9bf64458daa8798339a7336d0?tpId=271&rp=1&ru=%2Fexam%2Fcompany&qru=%2Fexam%2Fcompany&sourceUrl=%2Fexam%2Fcompany&difficulty=&judgeStatus=&tags=&title=&gioEnter=menu

var cups = [
                { type: 1, price: 100, color: 'black', sales: 60, name: '牛客logo马克杯' },
                { type: 2, price: 40, color: 'blue', sales: 100, name: '无盖星空杯' },
                { type: 4, price: 60, color: 'green', sales: 200, name: '老式茶杯' },
                { type: 3, price: 50, color: 'green', sales: 600, name: '欧式印花杯' }
            ]
            var select = document.querySelector('select');
            var ul = document.querySelector('ul');
            // 补全代码
            let obj = {
                0:()=>[].concat(cups),
                1:()=>cups.filter(item=>item.sales<100),
                2:()=>cups.filter(item=>item.sales>=100&&item.sales<=500),
                3:()=>cups.filter(item=>item.sales>500)
            }
            select.onchange = function(e){
                let srr = obj[select.value]();
                let len = srr.length;
                if(!len)return;
                let fragment = document.createDocumentFragment();
                for(let i = 0; i<len;i++){
                    let li = document.createElement('li');
                    li.innerText = srr[i].name;
                    fragment.appendChild(li)
                }
                ul.innerHTML = '';
                ul.appendChild(fragment)
                
            }

全部评论

相关推荐

05-12 17:00
门头沟学院 Java
king122:你的项目描述至少要分点呀,要实习的话,你的描述可以使用什么技术,实现了什么难点,达成了哪些数字指标,这个数字指标尽量是真实的,这样面试应该会多很多,就这样自己包装一下,包装不好可以找我,我有几个大厂最近做过的实习项目也可以包装一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务