css盲点总结 ①当我们对父元素设置display: flex;时,子元素如果不指定高度那么默认就是父元素的高度 如果对子元素设置align-items: center;height:100px;那么子元素就为100px 在父元素内垂直居中 ②当我们在父元素没有用flex布局的时候,子元素的高度默认是0,宽度默认是父元素的100% ③flex布局: 设置在容器上的属性:flex-direction + flex-wrap = flex-flow justify-content align-items align-content(针对多行) 设置在项目上的属性:order flex-grow + flex-shrink + flex-basis = flex(默认0 1 auto);auto(1 1 auto)等分放大缩小;none(0 0 auto)不放大不缩小
展开
评论
JS用原型模拟类的继承 function Student(props) { this.name = props.name || 'Unnamed'; } Student.prototype.hello = function () { console.log('Hello, ' + this.name + '!'); } function PrimaryStudent(props) { // 调用Student构造函数,绑定this变量: Student.call(this, props); this.grade = props.grade || 1; } //原型类比于类,类之间的继承,类比于原型之间的继承 PrimaryStudent.prototype = Object.create(Student.prototype) let ps = new PrimaryStudent({name:'zh',grade:100}) console.log(ps.name) ps.hello()
展开
评论
我不是口袋袋的头像
学生 @ 天津理工大学
今日踩坑:JS中的forEach()的回调函数里面的写break和return都是无效的!
24
一个算法,大家可以帮我分析一下时间复杂度吗? leetcode官方给出的时间复杂度是O(n),但是我寻思每次的pop和push操作不是也得用时间吗,而且push和pop的时间复杂度应该不是常数吧,因为数组的插入和删除应该是挺慢的吧,所以为啥时间复杂度就是O(n)呢?
我不是口袋袋于2021-07-18 20:36发布的图片
2
如何判断一个链表里面有没有环? 第一种思路就是给遍历过的每个节点加一个标记,这样一直向下访问,如果遇到了某个节点有自己的标记,那么就说明这个节点访问过了。 第二种思路就是传说中的快慢指针,如果有环那么快慢指针必相遇,这其实就有点类似高中时候学过了追及相遇问题。 快慢指针我在大一的时候听学长说过,现在大二都结束了,终于自己体会了一把,哈哈哈哈。 下面是快慢指针的JS代码,对应leetcode的141题! //快慢指针 var hasCycle = function(head) { while(head==null||head.next==null) return false; let quickPoint = head; let slowPoint = head; quickPoint = quickPoint.next.next slowPoint = slowPoint.next // if(quickPoint == null) return false; while(quickPoint!=null){ if(quickPoint == slowPoint){ return true; } if(quickPoint.next!=null){ quickPoint = quickPoint.next.next slowPoint = slowPoint.next }else{ return false; } } return false; };
展开
2
我的小程序终于上线了,欢迎大家体验。主打功能是任务添加与提醒,和学习情况统计。这是第一版,UI设计不完善,用户体验有待优化,可能还会有我没有发现的bug。大家可以提意见,或者说想要添加什么功能,我会在之后的迭代中不断完善。
我不是口袋袋于2021-07-17 15:56发布的图片
7
/** * @param {number[]} nums * @param {number} target * @return {number[]} * leetcode 第1题 两数之和 *这道题用两层循环时间复杂度比较高,但是容易想到。 我这里用的是map集合,主要是因为知道map的键,来查找值的话是很快的。 当我们遍历到一个数的时候,就把这个数放到map中,然后遍历下一个数的时候 首先通过target减去当前的这个数 得到的还是一个数,然后我们把这个数看成是map的 键 去map中找,如果找到了那么就完事了,如果没有找到,就把当前循环到的数当成键加入 到map中。这样我们通过一次循环就可以找到两数之和为目标值的数。 这个题目关键是:知道map在已知键的情况下,查询是很快的。 */ var twoSum = function(nums, target) { let map = new Map() for(let i=0;i<nums.length;i++){ if(map.get(target-nums[i])!=undefined&&map.get(target-nums[i])!=i){ let arr=[] arr.push(i) arr.push(map.get(target-nums[i])) return arr; } map.set(nums[i],i) } }; let res = twoSum([3,3],6) console.log(res)
展开
评论
module.exports和require是一对他们是nodejs的模块化的常用方式 export/export default 和import是一对,他们是ES里面的内容,是前端规范化的内容
评论
今天的HTML小知识: iframe标签用于将一个网页呈现在当前网页中,src属性是要呈现的网页的链接,name属性可以用来作为a标签的target属性的值,表示a标签链接到的网页在这个iframe中打开。 锚点是怎么实现的? 在页面中埋下一个锚点: <a name="001"></a> 在页面中添加超链接,点击超链接就会跳转到这个锚点: <a href="#001">点我到锚点</a>
展开
评论
//一个经典的promise和定时器执行顺序的题目,之前遇到过,再次记录一下 //promise的then是微任务,定时器是宏任务,微任务优先 setTimeout(()=>console.log("d"), 0)//一个异步操作 var r = new Promise(function(resolve, reject){ resolve() }); r.then(() => { var begin = Date.now(); while(Date.now() - begin < 1000);//阻塞主线程 console.log("c1") new Promise(function(resolve, reject){ resolve() }).then(() => console.log("c2")) });
展开
评论
容易记混splice和slice:JavaScript中的数组对象的slice函数用来截取数组的一部分,返回值是截取的部分,但是并不改变原数组。splice函数用来向数组中添加或者删除元素(第二个参数是删除的元素数量,第三个参数是在第一个参数表示的位置添加的元素),返回值是删除了的元素组成的数组,这个函数是对原数组进行修改的。
评论
今天开发小程序遇到一个问题,大家有么有好的解决方法。问题是这样的:我的小程序有一个每日打卡功能,用户每天都可以打卡一次,而且每天只能打卡一次,打卡过了之后今天的打卡状态就设置为已打卡,然后过了凌晨0点,就需要再次将打卡状态设置为未打卡。我应该怎么做到让小程序自动更改打卡状态?我想到的一个方法就是监听每天 的凌晨0点,到了这个时间就将打卡状态设施为未打卡,因为新的一天开始了,但是这样就会有一个监听器一直运行,感觉不是很好。大家有么有好的方法。
展开
14
今天参加互联网+复赛,路演比较失败,大概总结一下几点,给大家避坑 1.ppt要图文并茂,不能用太多的专业术语,因为评委老师并不懂你所研究的领域。ppt一定要简介,不能放太多文字,应该脱稿,自己将要讲解的文字在脑海中想好。 2.互联网+是偏向商业化的比赛,所以要侧重商业化,而不是项目的研发过程,建议严格按照商业计划书的目录来讲解。 3.用具体数据说话,不可模糊。例如提升了多少百分比要说清楚。 4.一定要做充分的调研报告,市场上有没有同类产品。 5.有专利或者论文,或者注册了公司一定要说清楚。 我被问到的问题有:如何把大量的用户数据变现,如何得到学校的支持,在对其他学校不了解的情况下怎么在其他高校推广,其他高校为何会接受你的产品。 这次的复赛不算成功,但是也学习到了很多。
展开
评论
今天参加互联玩+复赛,比较失败。大题总结一下几点:
评论
又是考六级的一天!
评论
下一页
个人成就
文章被点赞22
文章被阅读1,651
掘力值38
收藏集
0
关注标签
14
加入于