一次不错的面试经历


title: 一次不错的面试经历
date: 2017-08-25 15:50:56
tags: 学习


面试中的问题

面试官的问题都是很常规的问题,但是自己回答的还是欠妥。好多基础知识都不扎实,其次还有一个原因就是平时不怎么看面试题,如果多看看效果肯定更好。

数据类型

js中的数据类型:基本数据类型,引用类型巴拉巴拉的。

typeof

这个问题刚学js的时候一直遇到,但是老实说没去看过,因为觉得没什么用。哈哈,typeof 方法能 返回的类型只有这么几种。这个题阵亡了
查了一下MDN

Undefined   "undefined"
Null        "object" (见下方)
Boolean     "boolean"
Number      "number"
String      "string"
Symbol (ECMAScript 6 新增)    "symbol"
宿主对象(由JS环境提供)   Implementation-dependent
函数对象 ( [[Call]] 在ECMA-262条款中实现了)    "function"
任何其他对象  "object"

css盒子模型

就说了一下content,padding,margin啥的,然后w3c标准和ie下的不同。面试官不置可否,也不知道答案

闭包

老问题了,聊了一下垃圾回收机制,将内部函数传递到所在词法作用域以外的地方,这个函数会保持对当前作用域的引用,这个作用域就不会被回收

splice的第三个参数

好吧,平时就知道第一个第二个,第三个不知道.
注意区分和slice的区别,slice没有side effect

let arr = [1,2,3,4,5,6,7,8]
arr.splice(1,2,2222,33333,44444,5555) //[2, 3]
arr // [1, 2222, 33333, 44444, 5555, 4, 5, 6, 7, 8]

表单中disable和readonly 表单中disable和readonly区别

之前都是直接去react的,调用一下antd的api,这方面实在是欠缺,说出来可笑。都没听说过readonly!!!

dom事件

原生dom事件写过,但是没有遇到过冒泡问题,无赖网上都在说,能答出来但是不知道干嘛用。就写过stopPropagation和event.preventDefault()之类的

cookie和localstorage区别等

这个问题一直都有注意

cookie

  1. 让http有状态,http本来是没有状态的,每次请求都会传到后端,一般是放个人的信息,可以用来做一些鉴权操作
  2. cookie很小,存的东西有限
  3. cookie的expire time,可以设置有效时间,不设置就是浏览器关闭就清除

localStorage

  1. 顾名思义,浏览器本地仓库,空间大,和sessionStorage的区别在于,local不清理会一直存在,session每次关闭就清理。
  2. 注意区分前端的sessionStorage和后端session机制的不是一个概念

函数申明2种方式的区别

js里面的申明提前,编译阶段会把申明全部拿到最前面,赋值操作在执行阶段。
如果没记错的话,函数申明优先级在变量申明前面。

console.log(funcA('a')) // 报错funcA is not a func
console.log(funcB('b')) // 报错funcB is not defined,let 没有变量提升
console.log(funcC('c')) // c,函数申明优先提前
var funcA = function(...args){
    console.log(args)
}
let funcB = function(...args){
    console.log(args)
}
function funcC(...args){
    console.log(args)
}
var funcC = 1
funcC('ccc')             // 报错,对变量funcC重新赋值了,funcC已经不是函数了

定义一个不含有原型链上方法的对象

通过null继承过来的,什么属性和方法都没有
object.create(null)
看看别人说的吧,不一定准确

css画一个三角形,圆形平行四边形等

#triangle-up {
    width: 0;
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-bottom: 100px solid red;
}

手写正则

都是比较基础的,qq邮箱,数字字母组合等
/^[a-zA-Z\d]$/
/^[0-9]{5,12}/@qq.com$/

总结

深刻体会到基础太差了,有些问题脱离了应用场景,但是确实是不错的面试题。
写这个博客是为了记录这些问题,也是为了记住自己的不足。
最后面试官说了一下英文口语需要锻炼。这个短期还是放下吧

你可能感兴趣的:(一次不错的面试经历)