面试

8/5 21:00 阿里电话面试 20分钟

面试官评价:除了js,你了解点,其它的还是太少了
先介绍自己,介绍项目v-model 原理

  1. let const

let 变量 const 常量
不存在变量提升 暂时性死区 块级作用域(定义的不在全局里面)

  1. Symbol
  2. this
  3. bind, call, apply
  4. http
    302 404
    canvas
    node.js 优点
    前端工程化:webpack

8/15 作业帮初试 gg

行内标签 块标签
Array的方法
移动适配方案
webpack原理
最后一个字符串回文子序列算法没写出来。。

8/30 字节跳动 视频面试 一个小时

  1. git merge git rebase的区别

git merge 合并操作,将目标分支合并到当前分支

git merge

merge之前

执行命令。在master上

git merge dev
merge之后

可以看到,将dev分支上的最新记录,与主分支上的最新记录进行合并,并且提交了

git rebase 变基操作


git rebase 之前

git rebase master之后

操作记录

可以很明显的从上述图片中看到,将master分支rebase到dev上时,会将master上的新的commit拿到dev分支上。完全打乱了实际的历史提交记录


假设现在有一个master分支1-2-3,开发分支1-2-4-5.这两个在2的时候分开;

在dev分支上执行git merge master,将主分支合并到开发分支上,这时候的dev提交记录就会变成 1-2-4-5-6;这个6 就是两个分支最新的提交合并的一个新的提交;

如果执行git rebase master 将dev分支的基准修改,这时候的dev分支变成1-2-3-4-5;相当于从master的最新的提交出分开,而不是最开始的从2处分开


这里插一个问题,多次commit合并成一个commit

git rebase - i 版本号
这里将版本号之后的提交准备合并到版本号中,这个时候会进入到一个vi编辑模式,前面两行就是

git rebase -i 版本号之后

只需要将第二行的pick修改为squash,然后退出,就会将dev5.0的提交合并到dev4.0中

再加一个reset和revert的区别

git reset --hard 版本号
将HEAD指针指向指定版本,相当于舍弃了之后的所有
git revert -n 版本号
大致就是撤销该版本的修改,。我个人觉得,这就是一个简便的操作,把手动修改,变成命令撤销。并且提交到了暂存区,相当于执行了git add
还需要手动去commit才行

  • iframe的全屏
    看了一下,iframe是可以设置宽高的,那么,他就是一个内联块元素,
    我当时是这么答的,我将iframe放在一个div块里面,iframe是全铺在div里的。视频播放时,自带的全屏按钮
  • 301 302 304 401 403
    • 301 永久重定向
    • 302 临时重定向
    • 304 客户端发送附带条件的请求时,但未满足条件时,服务端会返回 - 304,不包含任何响应的主题部分;我所理解的就是,客户端发送一个请求,但是本地存在该资源缓存,只是不知道该缓存可不可用,就在请求头中附带if-**的字段。
      if-Modified-Since字段会带一个时间戳,服务器端会根据request头中:If-Modified-Since字段的时间与文件的实际修改时间进行比较。哪个新就用哪个
    • 401 第一次返回401,表示该请求需要http认证,第二次返回401表示认证失败
    • 403 服务器拒绝,权限不足
  • cors
    req = request
    res = response //当时只记得res,导致答错了
    后端给返回头设置

Access-Control-Allow-Origin
Access-Control-Allow-Headers
Access-Control-Allow-Methods
这里有一个问题,美团的面试官和字节的面试官都说post请求会发起复杂请求,但是mdn上说的是head,get,post这三种方法会发送一次请求。明天实际操作就知道了这里post并不会发送OPTION请求,而且本地文件发起ajax,它的origin为null

  • 垂直居中
1.
display:flex;
justify-content:center; /**水平主轴**/
align-content:center;   /*竖直交叉轴*/
2.
/*这个是人人网那个*/
/*子元素设置*/
position: absolute;
top:50%;
left:50%;
transform: translateX(-50%);
transform: translateY(-50%);
3
position: absolute;
margin:auto;
top:0;
left:0;
right:0;
bottom:0;
  • flex布局中左侧固定右侧伸缩
    calc(100%- 50px)
    flex-grow:1;//拉伸因子
.main{
  width:200px;
  display: flex;
}
.main .a{
  width:20px
}
.main b{width: 180px}
问 a,b宽度是多少。这题我答错了,
当时想的是bfc去了。实际应该是两者会收缩,等比收缩,
如果没有设置收缩因子的flex-shrink
  • css 响应式正方形
1.
width:20vw;
height:20vw;
2.
/*百分比是根据父元素的宽来计算的的,但是这个里面不能插入元素
想要插入的化,就在加个块,使他脱离文档流,浮动出去*/
width:20%;
padding-top:20%;
3.
/*其实这个跟第2个差不多,想要插入元素的化,就添加子块,使其脱离文档流*/
.main{
  width: 20vw;
}
.main::after{
  content: '';
  display: block;
  padding-bottom:100%;
}

这里需要注意一点,就是长单词不会自动换行,平常的单词会换行;需要设置css3属性:word-wrap: break-word
padding-bottom:100%;

  • box-sizing
    • content-box 标准盒子
    • border-box ie盒子
  • 防抖函数
let debounce = function(func, delay){
  let timeout = null;
  return function(){
    let args = arguments;
    let context = this;
    clearTimeout(timeout);
    timeout = setTimeout(function(){
      func.apply(context, args);
    })
  }
}
  • 快速排序
    我只说了原理。。。

人人网现场面试,聊了两个小时,面试笑嘻嘻,转身就GG

  • 一个方块根据屏幕滚动,在父元素内滑动
    absolute => fixed
    el.getBoundingClientRect获取元素在页面中的位置,以及自身宽高
  • 防抖
    -垂直居中
  • 两列布局,右侧是左侧两倍
    我日,当时根本没想到用百分比。想到了网格布局,flex
  • 数组降维
  • 数组乱序
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,036评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,046评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,411评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,622评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,661评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,521评论 1 304
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,288评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,200评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,644评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,837评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,953评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,673评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,281评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,889评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,011评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,119评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,901评论 2 355

推荐阅读更多精彩内容

  • 今天是失业的第四天,终于有时间来写点东西了,有的同学可能对于代码管理工具不是很了解,今天先来给大家讲下git的用法...
    艺术家吴老师阅读 1,735评论 0 0
  • 来自微信公众账号:开点工作室(ID:kaidiancs) 软件版本控制工具提供了源码的版本管理、提交历史追踪、多分...
    开点工作室阅读 4,567评论 0 9
  • 1、什么是 Git 复刻(fork)?复刻(fork)、分支(branch)和克隆(clone)之间有什么区别? ...
    ptlCoder阅读 806评论 0 0
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,583评论 0 7
  • Git 是目前最流行的分布式版本控制系统之一。 版本控制指的是,记录每次版本变更的内容和时间等细节,保留各版本之间...
    神齐阅读 1,425评论 0 7