写在建站之初
写在建站之初2022/2/10从小就不喜欢语文的我,在高考结束后一年多都没有什么写东西的机会的大背景下,居然感觉偶尔写下些什么很棒~
正好有现成的服务器,买了一个域名,找一篇靠谱的教程,一天,它诞生了。
在好朋友的指点下,网站暂时看起来也还不错。作为一个软件工程的学生,我当时还没有意识到写博客的好处。不仅仅是当日记一样记录,这更是一个锻炼自己表达能力和网站运营、维护的机会。
除了一些我自己没事想起来写下的东西,我争取上传一些学习过程中的笔记和某个方面的使用说明,大学不像高中,不再有什么给别人讲题的机会了,就以这种方式来检验一下自己是否真正掌握了所学的知识和技术吧~
网站后面肯定还会增加新内容哒,欢迎持续关注哦~
CSS世界摘记-2
务必了解的 CSS 世界的专业术语本章节主要涉及CSS属性、值、关键字、变量、选择器等,在此不多做赘述,仅讲解部分特殊内容。
未定义行为CSS直接中有web的标准来约束元素的行为,但是标准无法面面俱到,所以标准未规定的场景只能由各大浏览器厂家自行实现,这些场景就是未定义行为。具体表现为在部分场景下,不同浏览器的表现不一致。
流、元素与基本尺寸按照 W3C 的 CSS 规范区分,这里应该分为“块级元素”和“内联级元素” (inline-level element)。但是,在 W3C 的 HTML4 规范中,已经明确把 HTML 元素分成了 “块级元素”和“内联元素”,后续”内联级元素“和”内联元素“都将以”内联元素“称呼。
块级元素常见的块级元素有<div>、<li>、<table>。
注意,块级元素并不等于display: block的元素。例如,<li>的display为list-item,<table>的display为table。
“内外盒子”list-item最开始,只有块级盒子和内联盒子,但是这个模型无法解释list ...
CSS世界摘记(1)
CSS世界观CSS 世界的诞生就是为图文信息展示服务的
CSS流
所谓“流”,就是 CSS 世界中引导元素排列和定位的一条看不见的“水流”。
“流体布局”,指的是利用元素“流”的特性实现的各类布局效果。因为“流”本身具有自适应特性,所以“流体布局”往往是具有自适应特性的。
“流体布局”并不等同于 “自适应布局”。“自适应布局”是对凡是具有自适应特性的一类布局的统称,“流体布局”要狭 窄得多。
CSS世界的开启从IE8开始本书的CSS世界特指的是 CSS2.1 的世界。对 CSS2.1 的全面支持是从微软公司的 IE8 开始的,因此,本书中几乎所有特性、行为表现 都是针对 IE8 以上浏览器的。
CSS3新世界
布局更为丰富。
移动端的崛起,催生了 CSS3 媒介查询以及许多响应式布局特性的出现,如图片元素 的 srcset 属性、CSS 的 object-fit 属性。
弹性盒子布局(flexible box layout)终于熬出了头。
格栅布局(grid layout)姗姗来迟。
视觉表现长足进步。
圆角、阴影和渐变让元素更有质感。
transform 变换让元素 ...
暑期实习复盘总结
观前叠甲,本文为作者对自己的暑期实习应聘过程做的总结和复盘,文章内建议仅代表个人观点。
简历我的简历主要分为以下几个部分:
教育经历:包括最基本的学历信息、主要学生工作信息等
学生工作信息写最高的就行,太多了没啥用,不是主要部分
实习经历:实习的公司、参与的项目以及在项目中负责的工作。最好有涉及的技术栈、具体的产出等关键信息。关键信息编写可以使用加粗。
参与抽卡设置、滑卡页、个人卡片、笔记卡片等重要业务的前端开发,提交代码量**2000行+**;
项目C端深入使用React + TypeScript。使用swr和自封装的hooks管理请求数据流;
项目经历:我自己的项目经历比较一般,除了实习做的那个之外没有什么拿得出手的和前端相关的项目经历,所以写了一个游戏项目、一个后端项目、一个个人博客网站。
写这些项目的时候虽然每个项目的介绍都很简略,不是作为主要项目介绍的,但是也被问到过很多次。所以写简历的时候一定要慎重,尽量不要写自己不是很深度参与的项目,也要注意项目的复盘和回顾,防止问的时候答不上来减分。
其他技能:语言、和一些前端相关的工具(Photoshop、墨刀 ...
面经(10)————美团到店一面
面试时长90mins+,面试官人很好,很帅很爱笑,项目 + 八股答得还不错,代码有点崩,数据结构和算法这边没太准备,面试官评价还可以,应该问题不大
面试官自己部门的业务介绍
自我介绍
感觉项目经历很丰富,为什么选择来做前端?
项目:
wecrush是跨端的一个应用,那当时为什么没有考虑使用一些跨端的技术,而是使用react去做一个web应用的开发?
答了RN的移动端开发和web在并行的推进,然后根据后续产品的一些决策,把研发的精力投入到了web这边来
组件库的设计和使用这边,为什么不使用Ant Design、ElementUI等更加成熟的组件,而是自己手写?
答了开发过程中其实有参考这些组件的设计和代码,当时是为了满足一些定制化的需求。并且也有从人才培养的角度去回答,可以自己了解一些组件库的底层实现原理
然后问到了这种公共组件如果需要修改,所有引用了这个组件的页面都需要重新做测试,这种问题是怎么解决的?
回答了目前暂时没有太好的解决方案,只能对公共组件的编写、测试、CR等提出更加严格的要求,尽量不出问题,并且也要对之前的页面做全量的测试
面试官有提出可以使用mo ...
面经(8)————携程二面
携程二面
面试时长半小时,全是八股,但是深挖就答不上来,感觉应该寄了
自我介绍
介绍一下浏览器中的存储机制(答了cookie、localstorage、sessionstorage)
问了要禁止js能拿到cookie,应该配置哪个设置
跨tab同源访问sessionstorage是否可行
讲讲事件循环
问了微任务中遇到宏任务怎么处理
放入宏任务队列中,等微任务队列中的任务处理完后处理
跨域怎么解决
serviceWorker用过么(寄)
前端性能的相关指标(答得很不好,只知道首屏加载时间等一些最基本的)
Lighthouse用过么(寄)
CORS是啥
强制缓存怎么设置
当前的http协议版本?(不太清楚,只知道是3.0更高)
http2.0中的多路复用这个机制解决了哪些问题?
问了用户在使用中反馈前端有交互上的问题,让我来处理,应该怎么解决?
核心:拿到更多数据(用户设备、网络信息等),结合日志分析、复现,对症下药
反问
今天面试有哪些可以提升的点
感觉其实表现还可以,问到的问题的点都能答到,但是深挖一些东西可能就说不上来,不仅要注意知识的 ...
面经(7)————微信支付二面
微信支付二面
面试时长半小时左右,主要问项目和里面具体使用的技术,一堆不会,就问了20几分钟
居然没有自我介绍
说对我们的项目还挺熟悉的(x),看到了好几次(?)
然后问了我们项目的产品设计,我在其中主要负责哪些工作
然后问了我们项目打包,问了webpack和vite(vite没了解过)
问了package.json和lock.yaml的区别(答了一个是只是依赖,另一个里面的信息啥的更加完整,包括版本号之类的)
问了有没有了解过webpack的怎么打包处理的(寄)
问知道的git指令都有哪些
问了merge和rebase的区别(寄)
问了项目的git仓库架构
开始问后端项目
问了鉴权怎么做的(提到了jwt)
问jwt有什么缺点,里面说错了一个点,说token存在服务端(寄)
后面面试官纠正问token在哪里,反应过来了说是在请求头上携带
反问
今天面试有哪些可以提升的点
说我一面前端知识问的挺多的了,所以就没怎么问那边的,说他们那边需要的同学不止要会前端,更偏向全栈。希望一直保持着一颗好奇心,这样才能不断地学习成长、
部门
c端
b端
性能优化
主要 ...
面经(6)————携程一面
携程一面
面试时长半小时左右,主要问项目和里面具体使用到的技术,基本没问八股
自我介绍
对我们的项目很感兴趣,问了项目的具体情况,然后问我在项目里面具体负责的工作
问了react的版本,我说react18,但是不了解为什么是react18,整个项目的搭建不是我做的
然后问了打包的配置,问了webpack的loader(完全不知道),就说没了解过只会用
问了组件之间的通信方式,答得时候有引出状态管理和swr
问了状态管理为什么不用redux
问了swr是什么,怎么用的
问了组件库的设计,如何设置组件库的样式、整体风格等。答了我们自己的组件库的建设方式,然后暂时没考虑到这个问题;
问了如何使用sass,知不知道里面的一些特性,然后项目中用到最多的特性是啥(答了css的嵌套编写,减少命名压力,增加可读性、可维护性)
问了为什么没用变量,如何处理样式规范的大规模调整。答了目前项目体量较小,然后有设计的标准色卡,目前暂时没考虑到这个问题
反问
面试官做什么的
携程酒店的B端前端开发
实习生怎么培养
不太了解,只知道校招生的培养方式,实习生似乎进去直接就要干活
...
面经(5)————腾讯微信支付一面
腾讯微信支付一面
3/6投递,3/15一面,面试时长一个半小时左右,已通过
自我介绍
对我们的项目很感兴趣,问了项目的产品设计,然后问我在项目里面具体负责的工作
然后开始代码题
先问我有没有了解过深拷贝,深拷贝的概念
然后问我怎么实现,然后答了判断属性,如果是对象就递归,不是对象就直接拷贝。
然后问怎么处理循环引用
答了用一个多余的标记位标记这个对象是否被拷贝过
然后就出了一道深拷贝
问防抖和节流的概念
然后出了一道节流
然后问有没有了解过ts
然后出了一道把对象里面所有的属性名由下划线命名改为驼峰命名(应该用ts的,但是不太会就用了js + 正则实现)
@张运筹 蹲一个ts实现,不是很会(x)
出了一道ts类型守卫
代码题半小时要写完,第一题的循环引用的处理有点卡住了,代码有一点小问题
第三题忘记考虑属性值也是对象的递归调用问题,问了一下怎么改,就过了
第四题没咋问
然后开始对着简历问八股
面了一个半小时,东西有点多记不太清楚了,顺序不一定对
问了项目里面如何使用git,答了git的branch规范和commit message规范,然 ...
面经(4)————阿里钉钉二面
阿里钉钉二面
感觉来了个后端程序员面试的,面了半小时就跑了,连代码题和反问都没有,目前在等感谢信
问了项目,java、cpp、mysql等一些知识,可参考性不强,就不整理了