17.12.1 面试

今天去面试,被深深的打击到了,前端之路任重而道远啊~

  • 谈一下html语义化的作用

1.去掉或样式丢失的时候能让页面呈现清晰的结构
2.屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页
3.PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备对CSS的支持较弱)
4.搜索引擎的爬虫也依赖于标记来确定上下文和各个关键字的权重
5.你的页面是否对爬虫容易理解非常重要,因为爬虫很大程度上会忽略用于表现的标记,而只注重语义标记
6.便于团队开发和维护

  • ol与li的区别

这个问题我当场就有反问了面试官,不是ul和ol的区别?面试官回我:“没错,就是ol与li的区别,一个是有序列表,一个是无序列表,ol和li的共同父级是ul” 我反复质疑了几遍,面试官都非常肯定,并让我回来自己百度。
恩,是的,我回来百度了一波,WTF! ul和ol是同级关系,无序列表和有序列表。

  • 有什么办法解决大量css属性继承的问题(我根本没懂问的是什么+ +)

我的回答是在字标签内重写样式覆盖,sass、less预处理语言。
面试官:使用class命名空间(我觉得应该是以模块+功能来命名吧)
张大大的博客:http://www.zhangxinxu.com/wordpress/2010/09/精简高效的css命名准则方法/

  • 谈一下css的层叠上下文

1.png

看得我头皮发麻,博客地址:
http://www.zhangxinxu.com/wordpress/2016/01/understand-css-stacking-context-order-z-index/

  • 为什么js有变量提升,而php, java这些语言没有呢?

JS 存在变量提升,这个的设计其实是低劣的,或者是语言实现时的一个副作用。它允许变量不声明就可以访问,或声明在后使用在前。但在 ES6 加入 let/const 后,变量提升就不存在了

  • 谈一下JS中的面向对象

最基本的
function A(){}
A.proptotype = {
  constructor: A
  ...
}

function A(){}
function B(){
  A.call(this);
}
B.prorotype = new A();
B.prototype.constructor = B;

function A(){}
function B(){
  A.call(this);
}
function F(){}
f.prototype = A.prototype;
B.prototype = new F();
B.prototype.constructor = B;

//委托继承
var public = {} //定义公共方法
var a = Object.create(public); 通过委托可让a对象访问到public对象上的方法
a.xxx = function(){}  //定义自己的方法
  • 如何解决在ie中的内存泄漏

手动释放内存,将变量的值设为null
参考的博客地址:
https://www.cnblogs.com/firstdream/p/5548961.html
https://www.cnblogs.com/chuaWeb/p/5196330.html

  • 谈谈cookie和session

1.由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是Session.典型的场景比如购物车,当你点击下单按钮时,由于HTTP协议无状态,所以并不知道是哪个用户操作的,所以服务端要为特定的用户创建了特定的Session,用用于标识这个用户,并且跟踪用户,这样才知道购物车里面有几本书。这个Session是保存在服务端的,有一个唯一标识。在服务端保存Session的方法很多,内存、数据库、文件都有。集群的时候也要考虑Session的转移,在大型的网站,一般会有专门的Session服务器集群,用来保存用户会话,这个时候 Session 信息都是放在内存的,使用一些缓存服务比如Memcached之类的来放 Session。
2.思考一下服务端如何识别特定的客户?这个时候Cookie就登场了。每次HTTP请求的时候,客户端都会发送相应的Cookie信息到服务端。实际上大多数的应用都是用 Cookie 来实现Session跟踪的,第一次创建Session的时候,服务端会在HTTP协议中告诉客户端,需要在 Cookie 里面记录一个Session ID,以后每次请求把这个会话ID发送到服务器,我就知道你是谁了。有人问,如果客户端的浏览器禁用了 Cookie 怎么办?一般这种情况下,会使用一种叫做URL重写的技术来进行会话跟踪,即每次HTTP交互,URL后面都会被附加上一个诸如 sid=xxxxx 这样的参数,服务端据此来识别用户。
3.Cookie其实还可以用在一些方便用户的场景下,设想你某次登陆过一个网站,下次登录的时候不想再次输入账号了,怎么办?这个信息可以写到Cookie里面,访问网站的时候,网站页面的脚本可以读取这个信息,就自动帮你把用户名给填了,能够方便一下用户。这也是Cookie名称的由来,给用户的一点甜头。
所以,总结一下:Session是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中;Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现Session的一种方式。

  • HTTP协议

https://www.cnblogs.com/ranyonsue/p/5984001.html

  • 谈谈你对JSX这种语法的理解

JSX = JavaScript XML,是Javascript的一种扩展,一种定义带属性树结构的语法。当书写组件<Hello />时,其实就是在实例化一个对象。

  • 为什么在React中数据是单向流动的

因为只有一个数据源,数据流动方向可以跟踪,流动单一,追查问题的时候可以跟快捷。数据流是自上而下单向的从父节点传递到子节点,所以组件是简单且可预测的

  • 为什么要使用redux来管理状态

在业务还不是很复杂的时候,完全可以只用React来完成对行为的控制、数据的更新和界面的渲染。然而,随着业务越来越复杂,过多的状态会让数据流混乱,程序变得难以维护

  • react-router的实现原理

简单地说, 路由的基本原理即是保证View和URL同步,而View可以看成是资源的一种表现。react-router 主要是利用底层 history 模块的机制,通过结合 react 的架构机制做一层包装

  • 为什么React没有像Vue一样实现指令

因为JSX实际上就是在写JS, 直接就可以写JS实现了,没必要实现指令

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容

  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,182评论 11 349
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,596评论 18 139
  • 作者:晚晴幽草轩www.jeffjade.com/2016/10/31/115-summary-of-cookie...
    饥人谷_Dylan阅读 1,222评论 0 51
  • HTTP cookie(也称为web cookie,网络cookie,浏览器cookie或者简称cookie)是网...
    留七七阅读 17,823评论 2 71
  • 最近有种小说,特别流行,叫做重生。 无论主角是男是女,文体是BG还是BL,大致都是一个套路。主角受到或欺骗或背叛,...
    木木夕cq阅读 229评论 1 1