校招基本已,总结一下

校招的及时段时光攻读到了无数

终极大概是签约上海美团点评

之所以Word总结了累累问题。发布在这里


 

 

7-13:

1:flex项目嵌套flex项目怎么竟?

公了解Flex项目也得成为Flex容器吗?是的,是可能的!

而想嵌套多大就嵌套多酷(不过理智的做法是维系一个合理的水平)。

2:总结flexbox

3:规划布局

4:CSS选择器

5:现代各种布局

6:Hexo

7:react+redux书

 

7-17:

1:e.target.parentNode.remove();成功,查询一下JS原生的remove方法

2:复习JS DOM的原生操作方法,比如innerHTML(),insertBefore()等

3:技术之瞳

4:jquery的each,map等方法

5:数组和目标的深浅拷贝

http://blog.csdn.net/fungleo/article/details/54931379

 

7-18

1:MD5这种JS文件无法直接当index.js里面载入,需要为此webpack加入的原委与如何进入?

2:webpack2.2国语文档 http://www.css88.com/doc/webpack2/

4:screenX,pageX,client,offset…

http://www.cnblogs.com/yehuabin/archive/2013/03/07/2946004.html

7:js怎么编写鼠标的右击事件

https://zhidao.baidu.com/question/1111401816718591899.html

 

7.24

1.checked风波之变化<input type=”checkbox”
checked={this.state.checked} onChange={this.checkedChangeHandler}
/>记住账号1</span>

2:backbone路由的包怎么开的

3:基于 CentOS 搭建微信小程序服务

 

7.25

1.JS原生之onclick事件写法

2:左右补充加

3接人无还问题

 

7.26

作者:DaphneMoMo
链接:https://www.nowcoder.com/discuss/18530?type=2&order=3&pos=55&page=1

一面

1、 
window.onload和$(document).ready()的界别,浏览器加载转圈结束时谁时间接触?

  $(document).ready()方法及window.onload方法有一般之意义,但是在实施会点是来分之。window.onload方法是分支哟网页中的保有因素(包括元素的所有涉及的文件)完全加载到浏览器后才行,即javascript此可以拜网页中的其余因素。而透过jquery中之$(document).ready()方法注册之光阴处理程序,在DOM完全就绪时就得于调用。此时,网页的兼具因素对jquery而言都是可以拜的,但是,这并无意味着这些因素关联的文件还曾经下载了。

  举一个事例,有一个巨型的图库网站,为网页遭到之兼具图片添加某些行为,例如单机图片后让他隐藏或出示。如果应用window.onload方法来处理,那么用户必须顶及各一样符合图片都加载了后,才得以开展操作。如果下jquery中之$(document).ready()方法来进展设置,只要DOM就绪就好操作了,不待等所有图片加载了。显然,吧网页解析为DOM树的速较吧网页中的具有涉文件加载了的向的不久多。

  另外,需要注意一点,由于在$(document).ready()方法外报之风波,只要DOM就绪就见面给实施,因此恐怕这因素的关系文件不下充斥了。例如与图片有关的HTML下充斥了,并且一度就诶下为DOM树了,但好有或图片还非加载了,所有像图片的惊人及宽这样的属性此时于肯定有效。要化解之题目,可以行使Jquery中任何一个有关页面加载的章程—–load()方法。load()方法会在要素的onload事件备受绑定一个处理函数。如果处理函数绑定给window对象,则会于享有情节(包括窗口。框架,对象和图像等)加载了后点,如果处理函数绑定以要素上,则会在要素的被容加载了后加载。jquery代码如下:

1

2

3

4

$(window).load(function(){

//代码

 

});

  等价于javascript中之以下代码:

1

2

3

4

window.onload=function(){

     

//代码

}

 

2、  form表单当前页面无刷新提交  <form target=””>  iframe

http://www.cnblogs.com/yevon/p/about\_target\_attribute\_of\_form.html

3、  setTimeout和setInterval区别,如何相互实现?

http://blog.csdn.net/baidu_24024601/article/details/51862488

参考资料:javascript高级程序设计第三本子:重复定时器

4、 
如何避免多再次回调—promise,promise简单描述一下,如何在表面进行resolve()

法定文档

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise

         通俗解释

http://www.cnblogs.com/lvdabao/p/es6-promise-1.html

         感性理解

咱们回到总结一下,异步回调的风做法来四只问题:

  1. 嵌套层次很充分,难以保障

  2. 代码难以复用

  3. 库房被破坏,无法正常检索,也无从正常下 try/catch/throw

  4. 大多个异步计算以拓展,无法预料完成顺序,必须靠外层作用域的变量,有

误操作风险

Promise保留异步在管阂上的优势,又能给咱写代码写的更畅快

5、  margin坍塌?水平方向会无会见坍塌

http://www.cnblogs.com/hugejinfan/p/5901320.html水平方向不见面现出margin坍塌 

6、  伪类和伪元素区别

http://www.cnblogs.com/ihardcoder/p/5294927.html

简而言之来说,伪元素创建了一个虚构容器,这个容器不分包其他DOM元素,但是可以涵盖内容。另外,开发者还足以呢伪元素定制样式。

8、数组去再

http://blog.csdn.net/chengxuyuan20100425/article/details/8497277

 我究竟并想发了三种植算法来促成者目的:

1.  Array.prototype.unique1 = function()

2.  {

3.    var n = []; //一个新的临时数组

4.    for(var i = 0; i < this.length; i++) //遍历当前数组

5.    {

6.           //如果当前数组的第i已经保存进了临时数组,那么跳过,

7.           //否则把当前项push到临时数组里面

8.           if (n.indexOf(this[i]) == -1) n.push(this[i]);

9.    }

10.  return n;

11.}

12.Array.prototype.unique2 = function()

13.{

14.  var n = {},r=[]; //n为hash表,r为临时数组

15.  for(var i = 0; i < this.length; i++) //遍历当前数组

16.  {

17.         if (!n[this[i]]) //如果hash表中没有当前项

18.         {

19.                 n[this[i]] = true; //存入hash表

20.                 r.push(this[i]); //把当前数组的当前项push到临时数组里面

21.         }

22.  }

23.  return r;

24.}

25.Array.prototype.unique3 = function()

26.{

27.  var n = [this[0]]; //结果数组

28.  for(var i = 1; i < this.length; i++) //从第二项开始遍历

29.  {

30.         //如果当前数组的第i项在当前数组中第一次出现的位置不是i,

31.         //那么表示第i项是重复的,忽略掉。否则存入结果数组

32.         if (this.indexOf(this[i]) == i) n.push(this[i]);

33.  }

34.  return n;

35.}

9、使用flex布局实现三等分,左右两只因素分别贴到左手和右手,垂直居中

flex{1} flex{1} flex{1}

10、平时怎样学前端的,看了怎么书,关注了怎么群众号

二面

1、  说下对this的理解

http://www.jb51.net/article/77519.htm

2、  实现bind函数

http://blog.csdn.net/u010552788/article/details/50850453(手写bind()函数,理解MDN上之正统Polyfill,bind和new,柯里化)

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Function/bind
(bind mdn)

http://www.cnblogs.com/libin-1/p/6069031.html(理解JS中的apply,call和bind方法)

http://www.cnblogs.com/admos/p/4453259.html  (bind函数使用apply的实现)

3、数组和链表区别,分别可啊数据结构

频繁组的表征是全速随机访问
链表的性状是很快插入删除

4、对mvc的理解

5、描述一个印象最为要命的种,在里面担任的角色,解决什么问题

6、http状态码。。。401和403区别?

400(错误请求)

服务器不理解请求的语法。

401(未授权)

请求要求身份验证。对于登录后请求的网页,服务器可能返回此响应。

403(禁止)

服务器拒绝请求。

1xx(临时响应)2xx(成功)3xx(重定向)4xx(请求错误)5xx(服务器错误)

7、  描述下二瓜分查找

http://www.cnblogs.com/zuojiayi/p/6229902.html

8、  在函数中采取array.prototype.slice.call(arguments,1);的意向?

arguments是每个函数在运作的早晚自动取的一个近似数组的对象(传入函数的参数从0开始按照数字排列,而且有length)。比如当您
func(‘a’, ‘b’, ‘c’) 的下,func里面得到的arguments[0] 是
‘a’,arguments[1] 是
‘b’,依次类推。但问题在这arguments对象实际并无是Array,所以没有slice方法。Array.prototype.slice.call(
)可以间接对其落实slice的功能,而且回去的结果是真的的Array。

http://www.cnblogs.com/dingxiaoyue/p/4948166.html

https://www.zhihu.com/question/21351604

三面

1、为什么选择前者,如何学习之,看了怎样书,《js高级程序设计》和《你无知底之js》有什么区别,看开,看博客,看民众号三者的辰是哪分配的

2、如何评价bat

3、描述下以实习中举行过的一个类型,解决了啊问题,在里当了哟角色?这个历程在什么问题,有啊值得改进的地方

4、如何看待加班,如果出只品种需要连接一个月份加班,你怎么看

5、遇到的压力太酷之相同桩事是啊?如何缓解之

6、平时发生什么好

7、自身有待改善之地方

8、n长的数组放入n-1个数,不克重复,找有很缺失之频繁

思路:数组之同削弱去自然数的与,结果就是好重的。

相当差数列求和公式

 

 

9、手里有什么offer

10、你对此第一客工作太推崇的老三只地方是啊

11、如何评论现在底前端

12、有啊问题

一如既往达标午面了近乎四独小时好了三迎,当天晚上即令收取了三面面试官的对讲机说面试通过了,炒鸡开心,校招这么老吧接受的率先独offer~后来以打听及是凤巢部门,于是便控制去这里了

 

 

7-28

1:JS异步开发教程

https://meathill.gitbooks.io/javascript-async-tutorial/content/

 

7-31

1:自己之成品

2:JavaScript创建对象之老三种方法

http://blog.csdn.net/u010552788/article/details/50849191

3:书总一下 技术的瞳/react/JS高级/你不了解之JS

4:

 

1、手写jsonp的实现

2、手写链表倒数第K单寻

 

搜索单链表倒数第m只结点,要求时间复杂度为O(n).(提示,使用对指南针)


解题思路: 
健康思路也先行获链表的长度N,然后回N-k+1位置处的结点即可。但是中待遍历两次等链表。 
我们运用其他一样栽算法,设定两个指针p1,p2.以立刻点儿单指针都向第一只结点,让p1先走k步,然后简单独指针一起为后倒,当p1到达最终一个结点时,p2指针刚好靠于链表的倒数第k只结点。

 

3、  http请求行,请求头,请求体,cookie在谁里面?url在哪里面?

http://blog.csdn.net/u010256388/article/details/68491509

cookie在求头,url似乎在请求行?

4、  原型链的解说

原型链是作为实现持续的最主要措施,基本思想是采取原型为一个援类型继承另一个引用类型的性质与艺术。

5、 
对闭包的知,实现一个暴露内变量,而且外部可以拜修改的函数(get和set,闭包实现)

http://blog.csdn.net/baple/article/details/42495361

团结写得set的例证

var f1 = function (x) {

         var a = 1;

         function f2 (b){

                   a =  a+b ;

                   return a

         }

         return f2

 }

 

var x = f1();

var xx = x(2);

闭包就是能够读取其他函数内部变量的函数

7、{}=={}?   []==[]? null==undefined?

{} == {} false

[] == [] false

null == undefined true

null == null true

undefined == undefined true

解答

[] == [] 这个好理解. 当半单价都是目标 (引用值) 时,
比较的凡有限独引用值在内存中是否是和一个针对性象. 因为此 [] 非彼 [],
虽然与也空数组, 确是个别独互不相干的空数组, 自然 == 为 false.

 

null 表示一个值为定义了,定义也“空值”;
undefined 表示向未存定义。

就此设置一个价值吗 null 是成立之,如
objA.valueA = null;
不过设置一个值也 undefined 是休成立之

 

6、  基本的数据类型

ECMAScript倍受出5中概括数据类型(也叫做基本数据列): UndefinedNullBooleanNumberString。还发出1蒙复杂的数据类型————ObjectObject实为上是出于同样组无序的名值对组合的。Array,Date,Function+基本包装类Number,String,Boolean均归于Object

 

7、  基本的少数排列于适应布局

察觉出了position的性,不再跟健康文档流中的元素互相影响

.sub, .extra {

    position: absolute;

    top: 0;

    width: 200px;

}

.sub {

    left: 0;

    background-color: yellow;

}

.extra {

    right: 0;

    background-color: black;

}

.main {

background-color: blue;

    margin: 0 200px;

}

<div class=”sub”>left</div>

<div class=”main”>main</div>

<div class=”extra”>right</div>

 

11、OSI模型,HTTP,TCP,UDP分别以如何层

OSI 分层( 7 层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层

物理层与数链路层为点的协议族提供劳务我们一般很少接触。IP在网络层,TCP/UDP在传输层,应用层一般是咱们常接触的事物HTTP在采用层ARP(地址解析协议)在链路层

12、网站性能优化

CDN是什么?使用CDN有啊优势?

https://www.zhihu.com/question/36514327

13、快排的时空复杂度和空间复杂度。

var quicksort = function(arr){

         if(arr.length<=1){

                   return arr

         }

         var num = Math.floor(arr.length/2);

         var item = arr.splice(num,1);  

         var arrleft=[];

         var arrright=[];

         for (var i = 0; i < arr.length; i++) {

                   if(arr[i]<item[0]){

                            arrleft.push(arr[i]);

                   }

                   else{

                            arrright.push(arr[i]);

                   }

         }

         return
quicksort(arrleft).concat(item[0],quicksort(arrright));

}

 

console.log(quicksort([1,2,3,5,4]));

小心一下i < arr.length不克是<=,否则发生一个undefined就会无限循环

一面问的基础知识很多,但是基本都答出来了,面完后有些蒙逼。

二面凡一样号女面试官,给的下压力颇十分,人可比严肃,不苟言笑,后来听说二面凡压力对,二面问了50分钟。

2、在jquery方法与原型上面长方法的分及实现($.extend,$.fn.extend),以及jquery对象的实现(return
new jQuery.fn.init)

否jQuery类添加类方法,可以掌握为抬高静态方法

本着jQuery.prototype进得扩展,就是吧jQuery类添加“成员函数”。jQuery类的实例可以下此“成员函数”。

 

jQuery 2.0.3 源码分析core –
整体架构

http://www.cnblogs.com/aaronjs/p/3278578.html

3、手写一个递归函数(考察arguments.callee,以及arguments的解说)

// arguments.callee 是一个针对性正在行函数的指针

function factorial(num)

{ if (num <= 1) { return 1; }

else { return num * arguments.callee(num – 1); } }

caller

在一个函数调用另一个函数时,被调用函数会自动生成一个caller属性,指向调用它的函数对象。如果该函数当前莫给调用,或不用为外函数调用,则caller为null。

 callee

当函数被调用时,它的arguments.callee对象就是会指向自身,也就算是一个针对性自己之援。
鉴于arguments在函数被调用时才使得,因此arguments.callee在函数未调用时是勿设有的(即null.callee),且解引用它会起非常。

 

4、对前者路由的领悟?前后端路由于的区分?

1,什么是前面端路由于?
路由是依据不同之 url 地址展示不同的情节要页面
前者路由于就是把不同路由对应不同之情节或页面的天职交前端来开,之前是由此劳务端根据
url 的不同返回不同的页面实现之。
2,什么时候用前端路由于?
以单页面应用,大部分页面结构不移,只变动一些情节之运用

3,后端路由于:

列过反至不同的URL,都是再访问服务端,然后服务端返回页面,页面也可是服务端获取数据,然后和模板组合,返回HTML,也得以是直回模板HTML,然后由前端js还失央求数据,使用前端模板与数码开展组合,生成想使的HTML。

4.5、哪记住OSI七层协议模型

http://blog.csdn.net/hellochenlu/article/details/52895341

Physical Data Link Network Transport Session Presentation
Application

5、介绍一下webpack和gulp,以及项目蒙现实的用

http://www.cnblogs.com/lovesong/p/6413546.html

6、你对es6的了解

http://www.alloyteam.com/2016/03/es6-front-end-developers-will-have-to-know-the-top-ten-properties/comment-page-1/#comments

  1. Default Parameters(默认参数) in ES6
  2. Template Literals (模板文本)in ES6
  3. Multi-line Strings (多实践字符串)in ES6
  4. Destructuring Assignment (解构赋值)in ES6
  5. Enhanced Object Literals (增强的对象文本)in ES6
  6. Arrow Functions (箭头函数)in ES6
  7. Promises in ES6
  8. Block-Scoped Constructs Let and Const(块作用域构造Let and Const)
  9. Classes(类) in ES6
  10. Modules(模块) in ES6

7、解释一下vue和react,以及异同点

https://www.zhihu.com/question/31585377

上一下vue

8、  前后端分离的义与针对前者工程化的掌握

https://www.zhihu.com/question/28207685 –前后端分离

https://www.zhihu.com/question/24558375 –前端工程化主要应从

模块化:webpack对:require的五种用法

组件化:组件化实际上是千篇一律种植据模板(HTML)+样式(CSS)+逻辑(JS)三位一体的形式对面向对象的尤为抽象

规范化:规范化其实是工程化中深重要之一个片,项目初期规范制定的好坏会直接影响及深的开品质。

自己能够体悟的起以下一些情节:

目录结构的创制

编码规范

前后端接口规范

文档规范

零件管理

Git分支管理

Commit描述规范

定期CodeReview

视觉图标规范

自动化:我觉着,前端工程化的老大多脏活累在都当付出自动化工具来形成。

### 图标合并

不用再就此PS拼雪碧图了,统一运动Webpack吧;

无须再就此Icomoon了,统一运动Webpack吧。

### 持续集成

### 自动化构建

### 自动化部署

### 自动化测试

10、使用css实现一个三角

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

增幅一定要啊0,left,right是三角形的着力为左为右侧长度;bottom是三角形的胜;

10.5CSS3D效果?

13、解释一下call函数和apply函数的企图,以及用法

1、介绍一下协调

2、你说好抗压能力大,具体表现在哪?

3、对前者前景的展望,以后前端会怎么提高

4、手写第一不行面试没有写出来的链表问题,要求用es6写

5、平时凡是怎么套技术的?

6、平时高校里时间是怎规划的?

7、接下有什么计划?这个学期和下单学期的计划是?

8、项目遭到相见的难,或者你学习路上的难点

9、你是透过什么方法以及路线来读前端的

12、你于集团中更赞成被什么角色?

13、对java的理解

14、介绍node.js,并且介绍你用它举行的花色

 

百度外出售

 

1、介绍好

2、手写一个js的深克隆

3、for函数里面setTimeout异步问题

有关for循环里面异步操作的问题

for 循环中之setTimeout(function(){})异步问题,为什么改var 为let就好缓解?

 深切了解JavaScript编程中之一路同异步机制

4、归并排序

 

1、实现两独数组的排序合并,我平开始先行统一重复排序,他不愿意,然后自己因此了近乎插入排序的法子。

2、手写一个原本生ajax

https://segmentfault.com/a/1190000008097712

xmlhttp=newXMLHttpRequest();

xmlhttp.onreadystatechange=state_Change

xmlhttp.open(“GET”,“/example/xdom/note.xml”,true);

xmlhttp.send(null);

function state_Change()

{

if(xmlhttp.readyState==4)

{

`**if** (xmlhttp.status==200)`

{

// 这里当是函数具体的逻辑“

}

else

{

alert(“Problem retrieving XML data”);

}

}

}

6、手写实现jquery里面的insertAfter

结合nextSibling和insertBefore来实现

9、  AMD和CMD,commonJS的区别

AMD依赖前置;CMD就近依赖(牺牲性能来换取更多支出便民);

NodeJS是CommonJS规范的落实;CommonJS的斯Modules规范设计的新是以server端设计之,它是一个齐的模式。但是这种模式并无合乎吃浏览器端,大家着想一下如果浏览器联合模式一个一个加载模块,那么打开将会见变得老的悠悠,所以AMD就是为着这个诞生,它不过老之表征就是足以异步的措施加载模块。(CMD也是异步的)
那么RequrieJS其实就是AMD现在为此底太常见,最风靡的落实。

 

8-1

  1. 饥人谷
  2. 萌鹿简历

 

8-2

  1. 怎么写一个模态框

https://my.oschina.net/aiguozhe/blog/279992

  1. 面试什么的

http://www.cnblogs.com/iceb/p/7238785.html

作者:小芋头君
链接:https://www.zhihu.com/question/41986174/answer/94241086
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

莫谈这题目发生没有发含义,在我看来的确没有意思,但是是的发源其实不是介于这些题目是否生义。
而在于

汝能支配面试官问出而擅长对的题目?

当同样号称面试官,我面试了许多人口矣吗终究,首先,挑选简历的上我哪怕见面挑我能问有题目的简历,如果一个简历看了以后我还问不产生什么对的题目,只能随口问一个“闭包怎么形容”这样的题材的话,这个简历为无什么面试的必要性了。所以率先牵扯就是,简历有得让面试官针对性提问的始末,有亮眼的始末,有考虑有总结,这样我们就可快的展开同样会互动交流的面试了,而非是让您同样摆设试卷,你沿个写代码写算法。

然后,到了现场面试,同样,你要引导面试官来提问。首先是简历及反映的始末,然后是给你自我介绍的当儿,一定要是抓住这机会!!!!不要说把没因此底,你欢喜打球什么的,我都未关注!!让你自我介绍,是叫您一个机会,你来开启一下我们的话题!其实就算仿佛于述职,你谈话说你过去一段时间做过的来意义之事务,符合您一定的事情,不管是技术及晋级,还是上了初物,还是你带项目发分析,还是做了啊优化,做了哟提升组织效率的家伙,或者是公是官员,你如何保管团队,如何升级团队效率,如何考虑提升组织完全技术能力影响力等等等等。这真是无比重大了。

这些表述都是自你想表现的协调有所的精良特质作为起点来总的,

寻常差不多想下哪些的工程师特质是大家要见到的,

这些是你如果举行的,是您要是总结的,就是若下次面试的当儿要表达的

 

假使你的简历及公的自我介绍都没事儿说头,那不好意思,为了敷衍一下,我产生个面试题列表,我只能打里头照便挑一样长出来问,都是好形式化的题目,其实你回答对了吗不曾卵用,只是集聚一下阔而曾经啦,毕竟这些题目无google一下纵掌握操纵了。

说的都是大实话,不管是做面试官,还是失去面试,想明白自己而达出什么东西来,想掌握自己想使落什么信息,都相同,凡事就怕用心!

 

8-3

  1. HTTP协议下POST和GET的区别

http://blog.csdn.net/wangzhilife/article/details/12440089

2:浏览器缓存机制

http://www.cnblogs.com/slly/p/6732749.html

3:图片轮播

锋利的JQUERY

C:\Users\Administrator\Downloads\[jb51.net]fengli_jquery\实例下载\04第四章\季段例子\10-实例

3.5Jquery的show()很容易就可以有打达成为生之渐变效果,怎么好的?

show()使用的css3动辄画作用由达到望生需要高度,Jquery算高度的措施还非知底

4:React拖拽

http://www.cnblogs.com/LuckyWinty/p/5347559.html

5.若懂得什么是CSS预处理么

CSS 预处理器定义了同等种新的言语,其主导考虑是,用同样栽特别的编程语言,为
CSS 增加了有些编程的特点,将 CSS
作为靶子转移文书,然后开发者就使使用这种语言进行编码工作。

初步的说,“CSS 预处理器用一种特别的编程语言,进行 Web
页面样式设计,然后再编译成健康的 CSS 文件,以供项目用。CSS 预处理器吧
CSS 增加一些编程的表征,无需考虑浏览器的兼容性问题”,例如你得当 CSS
中动用变量简言之的逻辑程序函数(假设右代码编辑器中即使使用了变量$color)等等在编程语言中的有核心特色,可以吃您的
CSS 愈来愈简明适应性更强可读性更佳再度爱代码的保护齐诸多好处。结构清晰,便于扩展,轻松实现多重复继承

6.关于转变的法则及劳作方式,你可描述一下么

转变元素脱离文档流,不占用空间。浮动元素碰到包含它的边框要转元素的边框停留。

7.变通会有什么震慑吗,要怎么处理?

父元素的莫大无法给顶起来,影响和父元素同级的因素
同变化元素同级的非浮动元素(内联元素)会尾随该后
若非首先单因素浮动,则该因素之前的元素呢急需扭转,否则会潜移默化页面显示的布局

釜底抽薪智:
使用CSS中的clear:both;属性来排元素的成形可缓解2、3问题,对于问题1,添加如下样式,给父元素添加clearfix样式:

.clearfix:after{content: “.”;display: block;height: 0;clear:
both;visibility: hidden;}

.clearfix{display: inline-block;} /* for IE/Mac */

 

8.君询问如何选择器?以及这些选择器的应用状况?

9.你知道它的权重怎么计算么

  1. 第一等于:代表内联样式,如: style=””,权值为1000。
  2. 第二等:代表ID选择器,如:#content,权值为100。
  3. 老三抵:代表类,伪类和总体性选择器,如.content,权值为10。
  4. 季齐:代表色选择器和伪元素选择器,如div p,权值为1。

12.若自jQuery学到了哟?(跳坑了还是说自己看罢源代码…然后未见面说了..)

16.说说函数表达式和函数声明的分别(变量提升以及函数提升)

http://blog.csdn.net/qq673318522/article/details/50810650

18.君懂attribute和property的别吗

http://www.cnblogs.com/cndotabestdota/p/5706562.html

要素上之习性(包括打定义)都是attribute,但才发id,title,class等又也是property,attribute就是DOM元素自带的性能,property是者元素作为靶子附加的内容,比如firstChild等

19.平常时有发生询问web性能么,一般只要体贴如何点?

https://www.zhihu.com/question/21658448 (很重要!!!!!)

21.淘宝那边的商品项,如图,滚动到了才加载,你明白怎么落实者

题材19的zhihu回答中来个Lazy Load Images好像有点类似

 

8-4

  1. 前端路由和单页路由?

①  
Backbone单页路由就是用①href=”#xx”或②router.navigate触发路由后行回调函数,更改模板重新渲染。

②Hash路鉴于的兑现https://segmentfault.com/a/1190000007422616

hash 属性是一个不过读而写的字符串,该字符串是 URL 的锚部分(从 #
号开始之部分)。

语法:location.hash=anchorname

③前者的路程由于决定:hash和history(HTML5新特性)

④js页面刷新跳转的几种方式与分

http://blog.csdn.net/fb408487792/article/details/41248675

window.location.href=”http://shanghepinpai.com”; 

⑤a标签的href=”javascript:void(0)”和href=”#”的区别

http://www.cnblogs.com/pp-cat/p/4308736.html

要是页面中来id为nogo的元素,点击是链接后,锚点机制会作用,页面贴齐这个因素上因为

  1. 牛客网校招日历

https://www.nowcoder.com/activity/campus2018

  1. ES6解构赋值,箭头函数

http://es6.ruanyifeng.com/\#docs/destructuring

字符串也得解构赋值。这是因这时,字符串被移成为了一个近乎数组的靶子。

Object(‘abc’) // {0: “a”, 1: “b”, 2: “c”, length: 3, [[PrimitiveValue]]: “abc”}

 

let arr = [1, 2, 3];
let {0 : first, [arr.length – 1] : last} = arr;
first // 1
last // 3

4:廖雪峰JS

https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/0014345008539155e93fc16046d4bb7854943814c4f9dc2000

  1. console.trace()会打印出函数调用栈的音讯

 

8-7

1:js关于for循环中的闭包问题?

for(var i=0,arr=[];i<=3;i++) {
arr.push(function(){alert(i)});
}
arr[0](); // ?? 结果未是0
arr[1](); // ?? 全是4
改装后
for(var i=0,arr=[];i<=3;i++) {
arr.push(
(function(i){
return function(){
alert(i);
}
})(i)
);
}
行使闭包可以缓解了,为什么第一潮代码中的i读取的直接是I变量的末梢之结果为?
怪大神能让分析一下先是段子代码的尽的具体步骤呢?

https://www.zhihu.com/question/33468703

 

2:为什么用闭包呢

局部变量无法共享以及长久的保存,而全局变量可能引致变量污染,所以我们期望发同等种体制既可一劳永逸之保留变量又不见面招致全局污染。

特点

占据更多内存

非爱为放飞

何时使用

既然如此想反复使用,又想避免全局污染

何以使

1.定义外层函数,封装被保障的组成部分变量。
2.概念内层函数,执行针对表函数变量的操作。
3.外层函数返回内层函数的靶子,并且外层函数被调用,结果保存于一个大局的变量中。

https://zhuanlan.zhihu.com/p/27857268

 

3:

var k = (function fun(x) {

if(x>0) {

    x–;

    console.log(x);

} else{

         console.log(“lala”);

   return “lala”;

}

    fun(x); 

})(3)

console.trace(k);

干什么打印结果是undefined?

 

k就是你的fun(3)fun(3) 按照卿代码,没有显式给有返回值,默认就是归的 undefined 。

若你若开递归的话,应该 给 里面的 fun(x) 加上 return
变成 return fun(x); 如此就能让k为 lala了。

 

4:
a标签的href=”javascript:void(0)”和href=”#”的区别

http://www.cnblogs.com/pp-cat/p/4308736.html

苟页面内有id为nogo的要素,点击是链接后,锚点机制会作用,页面贴齐这个因素上盖

 

5:还是真的干一下原本生JS和JQUERY 然后从创作入手写一个工程

廖雪峰+MDN+JS高级+你切莫亮的JS+JQUERY

 

6:廖雪峰

1.字符串:多履字符串,模板字符串

2.对象:

中括号运算符总是会替点运算符。但点运算符却不自然能一体替中括号运算符。
中括号运算符可以为此字符串变量的始末作属性名。点运算符不能够。

var test={aa:12,bb:34};//或者var test={};

var cc= “acqId”

test[cc]=12;

test[“cc”]=13;

console.log(test[cc]);//13

console.log(test[“cc”]);//12

console.log(test[aa]);//报错
中括号运算符可以为此纯数字呢属性名。点运算符不克。
中括号运算符可以就此js的要字和保留字作为属性名。点运算符不能够。

 

假若我们只要检测xiaoming是不是有某一样性,可以据此in操作符:

‘name’`**in** xiaoming; // `true

然如果小心,如果in判断一个性能是,这个特性不必然是xiaoming的,它恐怕是xiaoming连续取得的:

‘toString’`**in** xiaoming; // `true

因为toString定义在object目标中,而颇具目标最终还见面于原型链上指向object,所以xiaoming也拥有toString属性。

而认清一个性能是否是xiaoming自我有的,而非是持续取得的,可以就此hasOwnProperty()方法:

xiaoming.hasOwnProperty(‘name’);//true

for…in 语用于遍历数组或者目标的性能

 

8-8

3.ES6新类型Map和Set

初始化Map需要一个二维数组,或者直接初始化一个空Map。Map具有以下措施:

var m = new Map(); // 空Map

m.set(‘Adam’, 67); // 加加新的key-value

m.set(‘Bob’, 59);

m.has(‘Adam’); // 是否有key ‘Adam’: true

m.get(‘Adam’); // 67

m.delete(‘Adam’); // 删除key ‘Adam’

m.get(‘Adam’); // undefined

var m = new Map([[‘Michael’, 95], [‘Bob’, 75], [‘Tracy’,
85]]);

不同于object的是JavaScript的目标来个稍题目,就是键必须是字符串。但实质上Number或者其他数据类型作为键也是颇合理之。

Map大凡均等组键值对的结构,具有极快的搜速度。

 

Set

SetMap类似,也是同样组key的汇聚,但无存储value。出于key不克再次,所以,在Set遭,没有重新的key。

倘创造一个Set,需要提供一个Array用作输入,或者直接创造一个缺损Set

vars1 =newSet();// 空Set

vars2 =newSet([1,2,3]);// 含1, 2, 3

通过add(key)术可以上加元素到Set蒙,可以又添加,但不会见来效应:

>>> s.add(4)

>>> s

{1,2,3,4}

>>> s.add(4)

>>> s

{1,2,3,4}

通过delete(key)措施可以去除元素:

 

ES6业内引入了新的iterable类型,ArrayMapSet都属于iterable类型。

具有iterable类型的集聚好由此新的for ... of循环来遍历。

for ... of循环是ES6引入的初的语法

 

你或会见生出疑难,for ... of循环和for ... in巡回有哪区别?

for ... in循环由于历史遗留问题,它遍历的实际上是目标的性能名称。一个Array数组实际上为是一个对象,它的每个元素的目被视为一个性质。

当我们手动于Array对象上加了额外的性能后,for ... in巡回将带来意想不到的竟然效果:

for ... of巡回则完全修复了这些问题,它不过循环集合本身的要素:

 

立马便是胡要引入新的for ... of循环。

唯独,更好的方法是一直利用iterable内置的forEach办法,它接受一个函数,每次迭代就是自行回调该函数。以Array为例:

vara = [‘A’,‘B’,‘C’];

a.forEach(function (element, index, array) {“

// element: 对当前因素的价

// index: 本着当前目录

// array: 指向Array对象自我

alert(element);

});

SetArray类似,但Set不曾索引,因此回调函数的前面片个参数还是因素本身

 

  1. 函数

 

①作用域

名空间

全局变量会绑定到window达,不同之JavaScript文件要采用了相同的全局变量,或者定义了同名字的顶层函数,都见面造成命名冲突,并且十分不便被察觉。

减掉冲之一个术是将自己的装有变量和函数全部绑定到一个全局变量中。例如:

// 唯一的全局变量MYAPP:

varMYAPP = {};

// 别变量:

MYAPP.name
=
‘myapp’;

MYAPP.version
=
1.0;

// 别函数:

MYAPP.foo
=
function () {“

`**return** 'foo';`

};

管自己的代码全部放入唯一的讳空间MYAPP面临,会大大减少全局变量冲突之恐怕。

群名牌的JavaScript库都是这般干的:jQuery,YUI,underscore等等。

 

②变量

由于varlet表的凡变量,如果假定阐明一个常量,在ES6之前是格外的,我们便用全大写的变量来代表“这是一个常量,不要改动它的值”:

varPI =3.14;

ES6正式引入了新的要字const来定义常量,constlet犹负有块级作用域:

‘use strict’;

constPI =3.14;

PI
=
3;// 一些浏览器不报错,但是无效果!

PI;// 3.14

⑤目标方法的this

万一盖目标的措施形式调用,比如xiaoming.age(),该函数的this对于调用的靶子,也不怕是xiaoming,这是契合我们预料的。

而单独调用函数,比如getAge(),此时,该函数的this针对全局对象,也就是是window

坑爹啊!

又坑爹的凡,如果如此写:

var fn = xiaoming.age; // 先拿到xiaoming的age函数

fn(); // NaN

啊是杀的!要包this对是,必须用obj.xxx()的款式调用!

 

稍微时候,喜欢重构的您拿办法重构了瞬间:

‘use strict’;

varxiaoming = {

name:‘小明’,

birth:1990,

age:function () {“

function getAgeFromBirth() {“

`**var** y = **new** Date().getFullYear();`

`**return** y – **this**.birth;`

}

`**return** getAgeFromBirth();`

}

};

xiaoming.age();// Uncaught TypeError: Cannot read property ‘birth’
of undefined

结果又报错了!原因是this指南针只当age主意的函数内对xiaoming,在函数内部定义的函数,this又指向undefined了!(在非strict模式下,它再对全局对象window!)

修复的主意为不是不曾,我们用一个that变量首先捕获this

‘use strict’;

varxiaoming = {

name:‘小明’,

birth:1990,

age:function () {“

`**var** that = **this**; `//
于法中一开始便抓获this

function getAgeFromBirth() {“

`**var** y = **new** Date().getFullYear();`

`**return** y – that.birth; `// 用that而不是this

}

`**return** getAgeFromBirth();`

}

};

xiaoming.age();// 25

var that = this;,你虽可放心地于措施中定义其他函数,而不是管具有语句都堆放到一个方式吃。

 

装饰器

利用apply(),我们尚好动态改变函数的行。

JavaScript的兼具目标都是动态的,即使搭的函数,我们啊可再次对新的函数。

现行而我们想统计一下代码一共调用了多少坏parseInt(),可以将具备的调用都找出来,然后手动加上count += 1,不过这样做最愚笨了。最佳方案是故我们友好的函数替换掉默认的parseInt()

varcount =0;

varoldParseInt = parseInt;// 保存原函数

window.parseInt =function () {“

count +=1;

`**return** oldParseInt.apply(null, arguments); `//
调用原函数

};

// 测试:

parseInt(’10’);

parseInt(’20’);

parseInt(’30’);

count;// 3

 

⑥大阶函数(参数里来函数的函数比如array.map)

Array.reduce

若是我们延续改善是例子,想艺术将一个字符串13579先变成Array——[1, 3, 5, 7, 9],再利用reduce()就算好描绘起一个将字符串转换为Number的函数。

爱屋及乌到之问题是:将字符串变成数字的隐式转换(符号)

‘use strict’;

var arr = [‘1’, ‘2’, ‘3’];

var r;

r = arr.map(parseInt);

[1, NaN, NaN]

由于map()接收的回调函数可以生出3只参数:callback(currentValue, index,
array),通常我们唯有用首先个参数,而忽略了传播的后两单参数。不幸之是,parseInt(string,
radix)没有忽视第二独参数,导致实际施行之函数分别是:

parseInt(‘0’, 0); // 0, 按十进制转换

parseInt(‘1’, 1); // NaN, 没有一样进制

parseInt(‘2’, 2); // NaN, 按二进制转换不容许出现2

足转移吧r = arr.map(Number);,因为Number(value)函数仅收受一个参数。

 

Filter()

Arrayfilter()啊接一个函数。和map()不等之凡,filter()管传播的函数依次作用为每个元素,然后根据返回值是true还是false决定封存还是丢该因素。

好为此来屡组去重新

 

箭头函数对this的熏陶

this

箭头函数看上去是匿名函数的同等种植简写,但实际,箭头函数和匿名函数有只家喻户晓的分:箭头函数内部的this凡是词法作用域,由上下文确定。

忆起前的事例,由于JavaScript函数对this绑定的错误处理,下面的例子无法获得预期结果:

varobj = {

birth:1990,

getAge:function () {“

`**var** b = **this**.birth; `// 1990

`**var** fn = `function () {“

`**return** **new** Date().getFullYear() – **this**.birth; `//
this指向window或undefined

};

`**return** fn();`

}

};

现今,箭头函数完全修复了this的指向,this连续指为词法作用域,也就是外围调用者obj

varobj = {

birth:1990,

getAge:function () {“

`**var** b = **this**.birth; `// 1990

`**var** fn = () => **new** Date().getFullYear() – **this**.birth; `//
this指向obj对象

`**return** fn();`

}

};

obj.getAge();// 25

假设采用箭头函数,以前的那种hack写法:

varthat =this;

纵然不再用了。

由于this于箭头函数中都以词法作用域绑定了,所以,用call()或者apply()调用箭头函数时,无法对this进行绑定,即传入的第一独参数为忽视:

varobj = {

birth:1990,

getAge:function (year) {“

`**var** b = **this**.birth; `// 1990

`**var** fn = (y) => y – **this**.birth; `//
this.birth仍是1990

`**return** fn.call({birth:2000}, year);`

}

};

obj.getAge(2015);// 25

 

Generator

generator(生成器)是ES6正经引入的初的数据类型。一个generator看上去像一个函数,但可以返回多次。

 

正式对象

总一下,有如此几长规则需要遵循:

1.永不采用new Number()new Boolean()new String()创包装对象;

2.用parseInt()parseFloat()来换任意档次及number

3.用String()来更换任意档次及string,或者直接调用某个对象的toString()方法;

4.一般性不必把自由类型转换为boolean还判断,因为可以直接写if (myVar) {...}

5.typeof操作符可以看清出numberbooleanstringfunctionundefined

6.判断Array要使用Array.isArray(arr)

7.判断null请使用myVar === null

8.判定有全局变量是否有用typeof window.myVar === 'undefined'

9.函数里面判断有变量是否留存用typeof myVar === 'undefined'

10.尾声有密切之同校指出,任何对象还起toString()方法吗?nullundefined纵使不曾!确实这样,这简单单新鲜值如果除,虽然null尚作成了object类型。

重仔细之同桌指出,number对象调用toString()报SyntaxError:

123.toString();//SyntaxError“

遇见这种情况,要突出处理一下:

123..toString();//`'123', `注意是两个点!

(123).toString();//‘123’“

毫不问何故,这就算是JavaScript代码的意趣!

 

JSON

序列化

JSON.stringify(xiaoming, null, ‘  ‘);

而我们还想如果标准控制什么序列化小明,可以为xiaoming概念一个toJSON()的方式,直接回到JSON应该序列化的数量

反序列化

以到一个JSON格式的字符串,我们一直用JSON.parse()管其成一个JavaScript对象

 

 

安插一句:CSS 动画实战:创建一个得天独厚的加载动画

http://svgtrick.com/tricks/7ecdbe287454e03bcbe6d36c3ee584bc

 

8-9

  1. 知识点总结

https://github.com/BearD01001/front-end-QA-to-interview#new%E6%93%8D%E4%BD%9C%E7%AC%A6%E5%85%B7%E4%BD%93%E5%B9%B2%E4%BA%86%E4%BB%80%E4%B9%88%E5%91%A2

  1. New关键字的进程

下new关键字调用函数(new ClassA(…))的具体步骤:

  1. 创立空对象;
      var obj = {};

2.
装新目标的constructor属性为构造函数的名目,安新目标的__proto__性指向构造函数的prototype对象;   obj.__proto__ = ClassA.prototype;

  1. 行使初目标调用函数,函数中之this被针对新实例对象:
      ClassA.call(obj);  //{}.构造函数();    

即是obj执行同样全套构造函数,把性能什么的经过this.xx =xx;给obj。      

  1. 以初始化完毕的初目标地址,保存到相当号左边的变量中

 

而注意,调用构造函数千万不要忘记写new。为了区别普通函数和构造函数,按照预约,构造函数首字母应当大写,而通常函数首字母应当小写,这样,一些语法检查工具而jslint用得以助你检测到漏写的new

 

瞩目:若构造函数中回到this或返回值是骨干项目(number、string、boolean、null、undefined)的价,则赶回新实例对象;若返回值是引用类型的价值,则实在返回值为这引用类型。

 

关于prototype和__proto__的关系

摘自JS高级:

 

咱俩创建的每个函数都起一个prototype属性,这个特性是一个指南针,指向一个对象,而这个目标的用途是含有可以由特定类型的备实例共享的特性与方法。

Constructor(构造函数)属性包含的是一个针对性prototype所在函数的指针,通过这个构造函数可以继承为原型对象上加计与属性。

        
而当调用构造函数创建一个实例之后,该实例将包含一个指南针叫做[prototype],也即是浏览器支持下的__proto__;

 
例如Array.prototype.slice.call();实际上Array就是一个构造函数啦!所以用的是prototype。

 

3.class继承

俺们先行想起用函数实现Student的方法:

function Student(name) {“

`**this**.name = name;`

}

Student.prototype.hello
=
function () {“

alert(‘Hello, ‘+this.name +‘!’);

}

设若就此新的class重在字来修Student,可以这么描绘:

classStudent {

constructor(name) {

`**this**.name = name;`

}

hello() {

alert(‘Hello, ‘+this.name +‘!’);

}

}

终极,创建一个Student靶代码和眼前章节完全一致:

varxiaoming =newStudent(‘小明’);

xiaoming.hello();

class继承

class概念对象的另外一个英雄的利益是延续又便民了。想同一思念我们于Student派生一个PrimaryStudent急需编制的代码量。现在,原型继承的高中级对象,原型对象的构造函数等等都未待考虑了,直接通过extends来实现:

classPrimaryStudentextendsStudent {

constructor(name, grade) {

`**super**(name); `// 记得用super调用父类的构造方法!

`**this**.grade = grade;`

}

myGrade() {

alert(‘I am at grade ‘+this.grade);

}

}

注意PrimaryStudent的定义为是class关键字贯彻之,而extends则表示原型链对象来Student。子类的构造函数可能会见以及父类不太一样,例如,PrimaryStudent需要namegrade星星个参数,并且要经super(name)来调用父类的构造函数,否则父类的name属性无法正常初始化。

PrimaryStudent一度自行取了父类Studenthello艺术,我们还要在子类中定义了初的myGrade方法。

ES6引入的class同原有的JavaScript原型继承来啊区别吧?实际上它从不外区别,class的来意就是被JavaScript引擎去实现原需要我们好编排的原型链代码。简而言之,用class的裨益就是巨大地简化了原型链代码。

 

练习

 

请利用class双重定义Cat,并受它们自从已经部分Animal继续,然后新增一个办法say(),返回字符串'Hello, xxx!'

class Animal {

    constructor(name) {

        this.name = name;

    }

}

class Cat extends Animal{

     constructor(name){

          super(name);

}

 

    say(){

       return `Hello, ${this.name}!`

}

}

var kitty = new Cat(‘Kitty’);

 

4.浏览器对象

window

navigator

screen

location

document

history

location.href是一个性,要这样用:
location.href=’http://www.example.com’而location.assign(‘http://www.example.com’)就location.href=’http://www.example.com’至于location.replace(‘http://www.example.com’)与前面两者的界别是,在replace随后,浏览历史就吃清空了(href与assign方法会出历史记录)。

 

5.操作DOM

由于HTML文档被浏览器解析后就是是相同株DOM树,要改成HTML的布局,就得通过JavaScript来操作DOM。

 

在操作一个DOM节点前,我们得通过各种措施先期将到之DOM节点。最常用的法是document.getElementById()document.getElementsByTagName(),以及CSS选择器document.getElementsByClassName()

 

老二栽办法是运querySelector()querySelectorAll(),需要了解selector语法,然后运规则来收获节点,更加方便.

 

严格地提,我们这里的DOM节点是借助Element,但是DOM节点实际上是Node,在HTML中,Node包括ElementCommentCDATA_SECTION顶众种植,以及根节点Document品类,但是,绝大多数早晚我们仅关心Element,也不怕是事实上控制页面结构的Node,其他门类的Node疏忽即可。根节点Document曾自行绑定为全局变量document

 

6.更新DOM

一致种是改innerHTML特性,
第二栽是修改innerTexttextContent属性,这样好活动对字符串进行HTML编码,保证无法设置任何HTML标签

 

修改CSS也是时得之操作。DOM节点的style性能对应所有的CSS,可以一直得到或安装。因为CSS允许font-size然的名号,但其并非JavaScript有效的属于性名,所以待以JavaScript中改写为驼峰式命名fontSize

//
``获取
<p id=”p-id”>...</p>“

var
p = document.getElementById('p-id');

//
``设置CSS:

p.style.color
= '#ff0000';

p.style.fontSize
= '20px';

p.style.paddingTop
= '2em';

  1. 插入DOM

有少只法子可以插入新的节点。一个凡以appendChild,把一个子节点添加到父节点的末尾一个子节点。

 

倘我们若将子节点插入到指定的位置怎么惩罚?可以采用parentElement.insertBefore(newElement, referenceElement);,子节点会插入到referenceElement之前。

 

  1. 删除DOM

如删减一个节点,首先使博得该节点本身和它的父节点,然后,调用父节点的removeChild把好删掉:

// 以到要删除节点:

var`**self** = document.getElementById('to-be-removed');`

// 用到父节点:

var`**parent** = **self**.parentElement;`

// 删除:

varremoved =parent.removeChild(self);

removed
===
self;// true

在意到去后的节点虽然不在文档树中了,但实质上她还在内存中,可以随时再次让补充加至别的位置。

 

 

MDN- ChildNode.remove()

ChildNode.remove() 方法把自她所属之DOM树被删除对象。

<div id=”div-01″>Here
is div-01
</div>“

<div id=”div-02″>Here
is div-02
</div>“

<div id=”div-03″>Here
is div-03
</div>

varel=document.getElementById(‘div-01’);“

el.nextElementSibling.remove();“

// id 也 ‘div-02’ 的 div 被删掉了

 

8-10

  1. 操作表单

 

交付表单

 

注意到idmd5-password<input>标记了name="password",而用户输入的idinput-password<input>没有name属性。没有name属性的<input>的多寡不见面给交给。

 

  1. 操作文件

以HTML表单中,可以上传文件之绝无仅有控件便是<input type=”file”>。

注意:当一个表单包含<input
type=”file”>时,表单的enctype必须指定为multipart/form-data,method必须指定为post,浏览器才会科学编码并因multipart/form-data格式发送表单的数量。

出于安全考虑,浏览器就同意用户点击<input
type=”file”>来挑选本地文件,用JavaScript对<input
type=”file”>的value赋值是未曾其余意义的。当用户选择了上传某个文件后,JavaScript也无力回天获取该公文之实路径:

File API

由JavaScript对用户上传的公文操作十分简单,尤其是心有余而力不足读取文件内容,使得广大消操作文件的网页不得不用Flash这样的老三正值插件来兑现。

乘HTML5的推广,新增的File
API允许JavaScript读博文件内容,获得重新多之公文信息。

HTML5的File
API
提供了FileFileReader星星单关键对象,可以得文件信息并读取文件。

下的例子演示了什么样读取用户挑选的图形文件,并于一个<div>未遭预览图像

  1. 自身评价

推荐语:本人本科期间是数学专业的,由于对电脑编程的钟爱,研究生转向计算机系,两年时间的档次开发经历,使得自己的编程能力来了好特别之加强。技术方面熟练掌握数据结构、操作系统、计算机网络;并针对中心算法和常用设计模式有比较好之左右。熟练掌握Java语言及其高级特性,包括集合、I/O流、反射、多线程并发;并针对JVM基本原理有肯定的垂询。熟练掌握JavaWeb技术,包括JSP、JavaScript、Servlet、Session、Filter、Listener、JDBC等技能。熟悉MVC开发模式以及SSH、MyBatis、SpringMVC等JavaEE主流开发框架;具有JavaWeb和.NET开发经历;并对准Lucene、JBPM、WebService、Nginx有肯定的问询。熟练运用SQL
Server、MySql数据库,熟悉数据库事务特性和数据库连接池;了解MySQL数据库的优化;并针对Redis有早晚之询问。了解Linux常见操作命令,Maven项目构建和中心的分布式开发原理。此外,在本科及研究生期间,成绩优异,积极与校内校外实践走,并多不行沾奖学金,其中校级奖学金两糟糕,研究生学业奖学金两糟糕。语言方面通过CET-4和CET-6,具备阅读英文文献同核心的牵连能力。在毕业到之际,希望自己力所能及生会和优质的庄重员工共上提高,共同缔造下一个英雄之一时!

 

  1. VUE的学习

 

声明式渲染

 

Vue.js 的中坚是一个允许行使简单的模版语法来声明式的用数据渲染进 DOM:

<div id="app-2">

  <span v-bind:title="message">

    鼠标悬停几秒钟查看此处动态绑定的提示信息!

  </span>

</div>

 

var app2 = new Vue({

  el: ‘#app-2’,

  data: {

    message: ‘页面加载于 ‘ + new Date()

  }

})

鼠标悬停几秒钟查看此动态绑定的提示信息!

这里我们遇到点新东西。你相的 v-bind 属性被称为指令。指令带有前缀 v-,以表示它是
Vue 提供的奇特属性。可能您既猜到了,它们会在渲染之 DOM
上应用特别之响应式行为。简言之,这里该令的图是:“将以此元素节点的 title 属性和
Vue 实例的 message 属性保持一致”。

 

8-11

1.react的extends语法(MDN)

使用 extends

率先只例子是根据名吧 Polygon ``类创建一个叫也Square``的类。 你可以打实战演示瞧这个事例。

class`Square extends Polygon `{“

`constructor(length) `{“

// 这里拿length传参给父类的构造方法“

// 作为父类Polygon的丰厚和大“

`super(length,
length`);“

// 备注:在衍生类中采用this前务必先行调用super()方法“

// 忽视这无异于碰拿会晤导致一个援错误“

`this.name
= `’Square’;“

}“

`get area() `{“

`return this.height
\* this.width`;“

}“

`set area(value) `{“

`this.area
= value`;“

`} `

}

 

Getter/Setter访问器属性

get 语法将一个目标属性绑定到查询该属性时将于调用的一个函数上。

语法E

{get prop() { … } }

{get [expression]() { … } }

 

super 关键字用于调用一个目标的爸对象及之函数。

super.prop 和 super[expr] 表达式在类 和 对象字面量 任何 方法定义 中还是中的。

语法

super([arguments]);

// 调用 父对象/父类 的构造函数

super.functionOnParent([arguments]);

// 调用 父对象/父类 上之办法

 

  1. 滚动条样式

http://blog.csdn.net/hanshileiai/article/details/40398177

当装了-webkit-scrollbar属性的时段,即使就设置了width,也会如滚动条变透明。

因此只要如下两久就好来那个漂亮的滚动条

#mobile-body-content::-webkit-scrollbar{width:8px}

#mobile-body-content::-webkit-scrollbar-thumb{background-color:#bdf4eb;-webkit-border-radius:4px;border-radius:4px}

 

4:通过以装元素的top和bottom,确定因素的可观。

 

5:如何让 height:100%; 起作用

http://www.webhek.com/post/css-100-percent-height.html

假使想吃一个元素的百分比高度height: 100%;打作用,你需要被这元素的兼具父元素的莫大设定一个有效值。

 

 

6:定宽元素居中方法2

{position:absolute;

left:50%;

width:300px;

margin-left:150px;}

 

7:利用伪元素::before或::after产生阴影

#mobile-body-bg:before {

position: relative;

width: 100%;

  height: 25px;

  background: linear-gradient(rgba(34,195,170,0.1) 0, transparent);}

 

8.CSS动画

transform-origin设置旋转元素的主脑位置

 

animation: msgBounceIn .4s;

animation-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)

 

@keyframes msgBounceIn{

from{transform:scale(0)}                    //from相当于0%,to相当于100%

40%{transform:scale(1.03)}

75%{transform:scale(0.98)}

to{transform:scale(1)}

}

 

补充一个:transition 属性 

width:100px;

transition: width 2s;

 

8-13

1.git文件上污染

http://www.cnblogs.com/cxk1995/p/5800196.html

当地文件更新服务器

http://blog.csdn.net/u014724048/article/details/54408994

服务器覆盖本地

http://blog.csdn.net/zzclqy/article/details/52743810

  1. 动用本是

transform: translateY(100%);

transition-duration: .3s;

transition-property: transform;

然后

background-color:rgba(0,0,0,0.5);

border-radius:20px;opacity:1;-webkit-transition:opacity
.3s;transition:opacity .3s

transform:translateY(0)

就对话框的见!

  1. 对话框关闭的X用::before和::after

.close-btn {

    position: absolute;

    top: 0;

    right: 0;

    height: 20px;

    padding: 12px 18px;

}

 

.close-btn:before {

    top: 10px;

    -webkit-transform: rotateZ(45deg);

    -ms-transform: rotate(45deg);

    transform: rotateZ(45deg);

}

 

 

.close-btn:after {

    -webkit-transform: rotateZ(-45deg);

    -ms-transform: rotate(-45deg);

    transform: rotateZ(-45deg);

}

 

.close-btn:before, .close-btn:after {

    content: ”;

    display: block;

    width: 16px;

    height: 2px;

    position: relative;

    top: 8px;

    background-color: #ddd;

}

  1. 针对话框出来时,底层变暗的功用(类似模态框)

#mobile.has-prompt #prompt-bg{

    position:absolute;

    top:0;

    z-index:50;

    display:block;

    width:100%;

    height:100%;

    background-color:rgba(0,0,0,0.5);

    -webkit-border-radius:20px;

    border-radius:20px;opacity:1;-webkit-transition:opacity
.3s;transition:opacity .3s

}

 

5:右边对话框浮动的散方法

.msg-row::before, .msg-row::after {

    content: ” “;

    display: table;

}

 

.msg-row::after {

    clear: both;

}

 

6.为什么 .clear :after 和 :before 的 display 属性要定义也 table?

.cf:after,.cf:before {content: ” “; display: table;} .cf:after {clear:
both;} :before是以table类型能生成单身的bfc,防止上边距塌陷,
:after负责清除浮动,防止父级高度塌陷;配合以,代码少,效率高。

单独是亮父级高度塌陷的代码通过测试才需要

.main::after{

    clear: both;

}

.main::after {

    content: ” “;

    display: table;

}

不畏可做到,原理就是使伪元素清除浮动

 

8-15

  1. 组件化
  2. 回调完成各种力量
  3. 利用数组+1+1如此成功对话?
  4. 怎react的零件要super(props)
    1. 调用super的原委:在ES6饱受,在子类的constructor吃必须先调用super才会引用this ``(经测试,不调用``super``会报错);
    2. super(props)的目的:在constructor被好利用this.props
    3. 末,可以看下React文档,里面来同等截

Class components should always call the base constructor with props.

脚我的事例,constructor的标配就是super(props);会活动传入组件的props;  

constructor(props) {

                   super(props);

                   this.state = {

                            replyarr:[“hehe”]

                   };

         }

除非当不需consructor的时可以简写如下

class Welcome extends React.Component {

  render() {

    return <h1>Hello, {this.props.name}</h1>;

  }

}

5.官方实例

class Clock extends React.Component {

  constructor(props) {

    super(props);

    this.state = {date: new Date()};

  }

 

  componentDidMount() {

    this.timerID = setInterval(

      () => this.tick(),

      1000

    );

  }

 

  componentWillUnmount() {

    clearInterval(this.timerID);

  }

 

  tick() {

    this.setState({

      date: new Date()

    });

  }

 

  render() {

    return (

      <div>

        <h1>Hello, world!</h1>

        <h2>It is
{this.state.date.toLocaleTimeString()}.</h2>

      </div>

    );

  }

}

 

ReactDOM.render(

  <Clock />,

  document.getElementById(‘root’)

);

 

  1. 改状态

①   this.setState({comment: ‘Hello’});

②   当state更新得用之前的价经常,要采用函数进行创新

Because this.props and this.state may be updated asynchronously, you
should not rely on their values for calculating the next state.

For example, this code may fail to update the counter:

// Wrong“

this.setState({“

`counter: this.state.counter + `this.props.increment,“

});“

To fix it, use a second form of setState() that accepts a function
rather than an object. That function will receive the previous state as
the first argument, and the props at the time the update is applied as
the second argument:

// Correct“

this.setState((prevState,`props) =&gt; `({“

`counter: prevState.counter + `props.increment“

}));

更新state数组写法平:

this.setState((prevState, props) => ({

                  counter: prevState.replyarr.push(“一只羊”)

           }));

写法二:

this.state.replyarr.push(“一只羊”);

           this.setState({

                    replyarr:this.state.replyarr

           });

  1. onClick={this.reply1.bind(this)}

react里面这种写法很多,如果非加上bind(this)那么在reply1
里面调用this结果是null?

 

①如果你的点击事件触发的方式里待引用this。就需要绑定啊。不然你的this是null(记得要没有绑定this应该是全局window。但此间this
就是null,撸完手上的需去看一下react源码 )所以

1.公要么在开创的时绑定:

<div className=”save”
onClick={this.handleClick.bind(this)}>Save</div>

2.还是以一如既往从头构造器里声称绑定

constructor(props){

  super(props);

  this.handleClick=this.handleClick.bind(this)

3.尚时有发生相同种植是利用闭包把作用域包起来

<div className=”save”
onClick={()=>this.handleClick}>Save</div>

倘若用第一种 会在历次点击时经bind创建一个新的方法,所以一般用2 3
两种情形,显示调用bind()只是为保证this值。

作者:空腹熊
链接:https://www.zhihu.com/question/50572127/answer/144757646

*创建绑定函数  bind() 不过简单易行的用法是创立一个函数,使这个函数不论怎么调用都起同一的this值。[JavaScript](http://lib.csdn.net/base/javascript)新手经常发作的一个谬误是用一个办法从目标中以出来,然后还调用,希望方法吃之this凡是本来的对象。(比如当回调中传来这个主意。)如果不做特处理吧,一般会丢原来的目标。从本的函数和本的靶子创建一个绑定函数,则能够可怜了不起地化解这题目:*

this.x =9;

varmodule = {

x:81,

getX:function() {`return this.x; }`

};

module.getX();// 返回 81“

varretrieveX = module.getX;

retrieveX();// 返回 9, 在这种景象下,”this”指向全局作用域“

// 创建一个初函数,将”this”绑定到module对象“

// 新手或会见吃全局的x变量和module里的属性x所惑“

varboundGetX = retrieveX.bind(module);

boundGetX();// 返回 81

结这里的例证进行掌握,React构造方法中的bind即将handleClick函数与是组件Component进行绑定以保证于是处理函数中使this时好天天指于这无异组件

 

  1. 7.       JQUERY对象转DOM对象

片栽转移方式将一个jQuery对象转换成为DOM对象:[index]和.get(index);

(1)jQuery对象是一个数目对象,可以经过[index]的艺术,来抱相应的DOM对象。

如:

 

 

var $v =$("#v") ; //jQuery对象

var v=$v[0]; //DOM对象

alert(v.checked) //检测这个checkbox是否被选中

(2)jQuery本身提供,通过.get(index)方法,得到相应的DOM对象

 

  1. 8.       深受滚动条保障以无限底部

$('#content').scrollTop( $('#content')[0].scrollHeight );

`一从头出错的由是REACT情渲染前就是安装了莫大,渲染后没有还设置,因此写以componentDidUpdate函数里面,在state转后活动调用!“`

componentDidUpdate(prevProps,
prevState) {

var contentSH =
$("#mobile-body-content")[0].scrollHeight;

var contentCH =
$("#mobile-body-content")[0].clientHeight;

var scrollTopValue = contentSH - contentCH;

$("#mobile-body-content").scrollTop(scrollTopValue);

}

9. 与滚动栏适配的速长条

//与滚动栏适配的快慢漫长
(function() {
var $w = $(window);
var $prog2 = $(‘.bottombar’);
var wh = $w.height();
var h = $(‘body’).height();
var sHeight = h – wh;
$w.on(‘scroll’, function() {
window.requestAnimationFrame(function(){
//scrollTop()是滚了有些,sHeight是可以滚粗
var perc = Math.max(0, Math.min(1, $w.scrollTop() / sHeight));
updateProgress(perc);
});
});

function updateProgress(perc) {
$prog2.css({width: perc * 100 + ‘%’});
}

}());

10.

$(window).height(); //浏览器当前窗口可见到区域高度

 $(document).height(); //浏览器当前窗口文档的惊人

 $(document.body).height();//浏览器当前窗口文档body的冲天

 $(document.body).outerHeight(true);//浏览器当前窗口文档body的总高度
包括border padding margin 

$(window).width(); //浏览器当前窗口可看出区域涨幅

 $(document).width();//浏览器当前窗口文档对象宽度 

$(document.body).width();//浏览器当前窗口文档body的莫大 

$(document.body).outerWi      
dth(true);//浏览器当前窗口文档body的总增长率 包

 

11.①Jquery里的{}?——$().css设置多只属性时就是是如此写

②各种高度和鼠标位置

网页可见区域方便: document.body.clientWidth 
网页可见区域大: document.body.clientHeight 
网页可见区域方便: document.body.offsetWidth (包括边线的充盈) 
网页可见区域大: document.body.offsetHeight (包括边线的大) 
网页正文全文宽: document.body.scrollWidth 
网页正文全文高: document.body.scrollHeight 
网页为卷去之赛: document.body.scrollTop 
网页为卷去之错: document.body.scrollLeft 
网页正文部分达到: window.screenTop 
网页正文部分左: window.screenLeft 
屏幕分辨率的胜: window.screen.height 
屏幕分辨率的有钱: window.screen.width 
屏幕可用工作区高度: window.screen.availHeight 
屏幕可用工作区宽度: window.screen.availWidth 

③    生命周期函数

④    缓慢滑动到对象位置

http://www.daixiaorui.com/read/92.html

Jquery的offset()可以博元素的职,从而稳定及元素所在处

⑤    同步同异步的定义

http://blog.csdn.net/u013063153/article/details/52457307

异步代码会给放入一个事件队列,等到有其他代码执行后才开展,而未见面阻塞线程。

javascript最为基础之异步函数是setTimeout和setInterval。setTimeout会在得时间后实行给定的函数。它承受一个回调函数作为第一参数和一个毫秒时间作次参数。

12.JS之单线程和异步机制

https://www.zhihu.com/question/19732473

如何理解阻塞非阻塞与合异步的区分?

http://www.cnblogs.com/sxz2008/p/6513619.html

JavaScript单线程和异步机制

虽JavaScript是单线程的,唯独浏览器中未是单线程的。你的有些I/O操作、定时器的计时与波监听(click,
keydown…)等还是出于浏览器提供的另线程来就的。

倘想以基本上线程处理部分耗时比丰富的天职,可以用HTML5提出的Web Worker。

 

8-16

明朝修改样式往github上面架一下

 

8-17

  1. JS中的波绑定,事件捕获,事件冒泡以及事件委托,兼容IE

http://www.cnblogs.com/zhangmingze/p/4864367.html

  1. background-image
  2. https://sologgfun.github.io/
  3. 作者:Try
    链接:https://www.nowcoder.com/discuss/19662?type=2&order=3&pos=21&page=1
    来源:牛客网

先前都是当牛客看人家的面经,面试更啊的,这次该换我来写了,

实习:

校招:

7.20上马投简历

蚂蚁金服UED

一面:55分钟

1.怎么样为各种情形下之div居中(绝对定位的div,垂直居中,水平居中)

  1. display有怎样值?说明她们的用意

None,block,inline-block,table,cell

  1. requirejs实现原理

基本原理是动态生成script标签,比如requirejs,seajs。还有局部是ajax请求js代码,然后eval执行之。另外可以关心一下MT.手机腾讯网,基于localstorage来做到路字符级别之增量更新

  1. requirejs怎么防止再次加载

7.ES6里头的箭头函数的this对象与外的出吗区别

8.tcp/udp区别

http://www.cnblogs.com/bizhu/archive/2012/05/12/2497493.html

小结TCP与UDP的区别:
1.冲连接和任连接;
2.针对系资源的渴求(TCP较多,UDP少);
3.UDP程序结构较简单;
4.流模式以及数量报模式 ;
5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保险。

  1. tcp三不成握手过程

TCP三次于握手过程
1 主机A通过奔长机B 发送一个含同步序列号的标志位的数量段为主机B
,向长机B 请求建立连接,通过此数据段,
主机A告诉主机B
两桩事:我思要同汝通信;你可以为此谁序列号作为开场数据段来回应我.
2 主机B
收到主机A的恳求后,用一个含有确认对(ACK)和同步序列号(SYN)标志位的数据段响应主机A,也告知主机A两起事:
自既收你的请求了,你可传输数据了;你要是为此啊佧序列号作为开头数据段来回应本人
3 主机A收到这个数据段后,再发送一个认同对,确认已经接到主机B
的数据段:”我就接收回复,我现在如果起传输实际多少了
然3不行握手就做到了,主机A和主机B 就可以传输数据了.
3糟糕握手的性状
尚无应用层的多寡
SYN这个标志位只有以TCP建产连接时才会叫置1
握手完成后SYN标志位叫置0

  1. xss与csrf的规律和怎么防止

http://blog.csdn.net/koastal/article/details/52905358

①XSS概念之主语是“脚本”,是平等栽跨站实施之本子,也不怕是JavaScript本子,指的是于网站上渐我们的javascript本子,执行非法操作。 
CSRF定义之主语是”请求“,是同样种跨站的仿冒之请,指的凡超越站伪造用户的乞求,模拟用户之操作。

②XSS攻击发生的准是可履javascript脚本,一般以站点中终究会生发表文章、留言等消息的表单,这种表单一般是形容副到数据库吃,然后于某某页面进行展示。我们得以以这些表单中一直编写javascript代码(<script>alert("hack
sucess!");</script>
)进行测试,看是否足以推行。如果当信显示页面js代码可以实施,XSS攻击就成功了。

CSRF(Cross-site request
forgery跨站请求伪造)是平种据web浏览器的、被模糊了之代办攻击。CSRF定义的主语是”请求“,是均等栽跨站的仿冒之请,指的凡超越站伪造用户之乞求,模拟用户的操作。

 

GET和POST的使用

以web程序的设计原则及,GET传递参数的操作,不应该改变程序的内部结构,主要用来查询信息之过滤。对于数据库的双重删改操作,一定要采取POST方式传值。

XSS和CSRF攻击的守护

防御XSS攻击可以透过以下简单端操作: 
1,对用户表单输入的数开展过滤,对javascript代码进行转义,然后再存入数据库; 
2,在信的来得页面,也要是进行转义,防止javascript在页面上执行。

 

CSRF攻击的守可以透过以下简单方面操作: 
1,所有需要用户登录后才会实施的操作属于首要操作,这些操作传递参数应该使post方式,更加安全; 

2,为防范跨站请求伪造,我们在某次请求的时都要带上一个csrf_token参数,用于标识请求来源是否合法,csrf_token参数由系统生成,存储在SESSION中。

  1. mysql与 MongoDB的区别

关联项目数据库:最常见应用最常见的均等近乎数据库,建立以关乎模型基础及数模型大致上就是二维表,一个突出的特性是因此SQL进行操作,能满足大部分求。常见的MySQL,Oracle,Microsoft
SQL Server等。

MySQL,开源的关系项目数据库,在现世数据库中于突出,能满足你大部分需,毕竟Oracle很贵。一般用起而运行一个MySQL的劳动,然后用客户端去老是它,比如当Java里或者用shell连接127.0.0.1:3306。之后就足以开心地推行SQL语句增删查改了。

事例:比如学生信息保管体系,服务器123.123.123.123:306及用的MySQL,另一个服务器上的Web应用得接连到她,学生为主信息一个阐明,班级信息一个阐明。学生的班级id字段是外键连接至班级信息表的班级id。

SQLite,一个异常迷你的涉嫌项目数据库,麻雀虽小五脏俱全。(需要长途连服务器上之数据库还是宝宝用MySQL),连接数据库就比如是开辟个db文件,比如用shell或者编程语言总是到e:\example.db。之后就可以高兴地用SQL语句增删查改了。非常适合嵌入至下中,比如android应用。显然,如果你写的次第访问的多少想存成一个本地文件,你协调统筹文件格式存多少充分麻烦不使用之。比如开只片子管理app,内嵌mingpian.db来保存名片。

 

非关系型数据库:由于涉及项目数据库虽然数据结构很严谨专业,有同坏堆约束(比如确保每个数据主键唯一啊,存在别的表里的数额用外键连接啊之类的),但是于好几时候在不足,比如我于今天始于满怀的数量还比昨日底几近矣俩字段,或者今天初始每条数中放了一个列表,这时候关系项目数据库就坏用了(要么建新表,要么alter旧表,然而改变中存了N多数随的旧表的布局代价十分特别),再以数据为多为主,并且修改一长条记下有只字段经常要求老的版不克废除。

为了满足这些需要,就涌出了非关系型数据库,也有人称之为NoSQL数据库,放弃一部分涉及项目数据库的“严谨”,而支持各种别的特性。常见的发出HBase、MongoDB、Redis等等。   
MongoDB按分类可以算“基于文档的数据库”,里面数据的“长相”参见JSON格式。然而在我看来,很多吵架吵着用MongoDB的情形MySQL完全可胜任。

 

腾讯TST微信(第一次,内推)

一面:50分钟

5.gulp与webpack区别

7.说生而懂得的响应状态码

10.针对性nodejs了解多少

 

二面:90分钟 (视频面)

率先是少数只编程题 

2.落实一个可是拖动的div(要考虑到浏览器兼容性)

http://www.w3school.com.cn/html5/html\_5\_draganddrop.asp

 

 

二面:40分钟

1.赶上了什么样浏览器兼容性问题

  1. 破浮动有哪几栽艺术,分别说说

http://www.cnblogs.com/Lu-Lu/p/6253714.html

尽强浮动解决帖!

  1. js继承

http://www.cnblogs.com/humin/p/4556820.html

 

三面:90分钟

1.你模仿了多少结构没有,说说您还打听些什么

2.公拟了电脑操作系统没,说说你还询问些什么

3.若拟了电脑组成原理没,说说公还了解些什么

4.你模仿过算法没,说说而都询问些什么

5.游说下抉择排序,冒泡排序的兑现思路

复习技术的瞳

7.深受你计划一个前端css框架你怎么开

12.浏览器缓存的分

http://www.techweb.com.cn/network/system/2016-01-05/2252395.shtml

17.js备受上下文是啊

https://segmentfault.com/q/1010000008295253/a-1020000008297388

箭头函数没有自己的 thisargumentssupernew.target,
而是经过上溯词法作用域找到最近概念之那个.

var obj = {

foo:() =>`console.log(**this**)`

}

即段代码里箭头函数里头的 this 指向的凡概念了箭头函数的酷执行上下文,
显然即 window.

ES6 箭头函数惨遭的
this?你可能想多了(翻译)

http://www.cnblogs.com/vajoy/p/4902935.html

  1. 当有人说“变量所处之上下文”时,实际指“词法环境”,或者我们常说的作用域,即业内中之Lexical
    Environment。
  2. 当有人说“函数的上下文”时,实际指“函数的行环境”,即标准着的Execution
    Context。
  3. 当有人说“call、apply和bind会改变函数执行之上下文”时,实际指“函数执行时之this”,即规范中的this
    binding。
  4. 当有人说“你这段代码要结合上下文才会收看具体意思”时,此处的上下文就是我们日常生活中说的上下文。

 

21.平淡无奇在档次遭到因故到了什么样设计模式,说说看

 

 

美团

  1. 一来给了张纸要求写js自定义事件

http://www.jb51.net/article/83911.htm

https://developer.mozilla.org/zh-CN/docs/Web/Guide/Events/Creating\_and\_triggering\_events

  1. h5有个api能定点你懂得是哪位吧

Geolocation

5.webpack怎样配置

7.link跟@import有啊界别

  • link属于html标签,而@import是css提供的。
  • 页面被加载时,link会同时受加载,而@import引用的css会等及页面加载了晚加载。
  • link是html标签,因此尚未兼容性,而@import只来IE5以上才会鉴别。
  • link方式样式的权重高于@import的。

11.起了道url去参数的题让于纸上写 

总:题目暂时虽优先这么多,先把写看罢

 

8-18

  1. 写个后台程序,时而跑一下证登录功能

前台是为此servlet写得

8-19

  1. 学弟网站,S流,面试题,第二卖简历
  2. Font Awesome矢量字体图标

3. Var k; alert(k);

  1. 二叉树资料

http://blog.csdn.net/fansongy/article/details/6798278/

  1. 于Linux上,对于多进程,子进程继续了老子进程的下列哪些?

爸爸进程和子进程有独立的地方空间以及PID参数。

6.

‘a’=97
‘A’=65

7.

最缺少寻道时间先行算法

8.

微软操作系统(DOS、WINDOWS等)中磁盘文件存储管理的极致小单位叫做“簇”
扇区:硬盘不是一律不好读写一个字节而是相同不良读写一个扇区(512个字节)
:系统读读写文件之核心单位,一般为2之n次方个扇区(由文件系统决定)

片好蕴涵几页,页可以蕴涵若干簇,簇可以分包多扇区

9.

电脑的最好小存储单位凡许节Byte,一个字节,
是由八各类二进制位组成的,就是立八各项数字只是出于“0”和“1”两独数字构成,例如:11111000,00000001,00000101相当于,1个英文字母、英文标点、半角数字
在计算机是因八位二迈入制数保存 就是一个字节大小,1独汉字(包括中文标点
全角数字)就是2个字节 (十六各项二进制)

1各二进制大小就是1bit

10.

DNS知识点

A:DNS就是将域名翻译成IP地址。

B:主要为此UDP,但是当请求字节过长越512字节时用TCP协议,将该分割成多个部分传输。

C:DNS协议默认端口号是53。

D:操作系统的DNS缓存:windows DNS缓存的默认值是
MaxCacheTTL,它的默认值是86400s,也便是均等天。macOS
严格按DNS协议被的TTL。

   
 游览器的DNS缓存:chrome对每个域名会默认缓存60s;IE将DNS缓存30min;Firefox默认缓存时间仅来1分钟;Safari约为10S。

11.

圈二分法实现细节,取中值时:mid=low+((high-low)/2);是收获左中价值

12.

线性结构是一个一如既往数据元素的聚合。[1] 

常用之线性结构产生:线性表,栈,队列,双排,数组,串。

有关广义表,是相同栽非线性的数据结构。

科普的非线性结构有:二维数组,多维数组,广义表,树(二叉树等),图。

特征

1.汇聚中必是唯一的一个”第一独元素”;

2.集结中毫无疑问是唯一的一个”最后的因素”;

3.除最终元素外,其它数据元素都发生唯一的”后继”;

4.除首先因素外,其它数据元素都发生唯一的”前驱”。

数据结构中线性结构指的是数据元素中存在正在“一对一”的线性关系之数据结构。

若是(a0,a1,a2,…..,an),a0为率先单要素,an为终极一个要素,此聚众即为一个线性结构的聚合。

对立应于线性结构,非线性结构的逻辑特征是一个结点元素或对许多独一直前驱和多独后继。

13.

C语言,设有宏定义:

1

2

#define A 4+5

#define B A*A

尽管如此表达式B*B的值为

4+5*4+5*4+5*4+5=69

14.pure

 https://www.purecss.cn/start.html

<meta name=”viewport”
content=”width=device-width,initial-scale=1″>

http://www.cnblogs.com/2050/p/3877280.html

15.CSS媒体询问

CSS 语法

@media mediatype and|not|only (media feature) {
    CSS-Code;
}

君呢得以本着不同的媒体用不同 stylesheets :

<link rel=”stylesheet” media=”mediatype and|not|only (media
feature
)” href=”mystylesheet.css“>

 

@media 传媒类型and (媒体特性){你的体裁}

@media screen and (max-width: 300px) {
    body {
        background-color:lightblue;
    }
}

 

8-22

  1. 基于pure的CSS框架
  2. React-native

http://www.jianshu.com/p/b88944250b25

  1. 思路同样:仅后台间隔执行的话,不用交前台的口舌无法出示验证码

思路二:

 

8-23

  1. 前端性能优化

https://segmentfault.com/a/1190000000490328#articleHeader4

  1. JSX

 class是js关键字,这里而就此className。对于E选项,在jsx中直接写行内样式时无克使引号,而是style={{color:’red’}}的方式

  1. 数组方法

主题需要将数组a=[1,2,3]变成[1,2,3,4],需要改变原数组a。

Array对象常用方法中:

莫移原来数组:

1、 concat()

连接两个或多个数组

切莫更改原数组

返回给连接数组的一个副本


2、join()

管数组中持有因素放入一个字符串

无改原来数组

回去字符串


3、 slice()

起已经有些数组中归选定的元素

勿更改原来数组

回到一个初数组


4、 toString()

把数组转为字符串

切莫改动原数组

归来数组的字符串形式

反原先数组:

5、 pop()

抹数组最后一个因素,如果数组为空,则未转屡组,返回undefined

变动原先数组

返回给删除的素


6、 push()

通往数组末尾添加一个或多只要素

转原先数组

回去新数组的长短


7、 reverse()

颠倒数组中元素的逐条

更改原先数组

回该数组


8、 shift()

将数组的首先独因素删除,若空数组,不开展其它操作,返回undefined

改原数组

回来第一只因素的价值


9、 sort()

对数组元素进行排序(ascii)

更改原数组

回该数组


10、 splice()

从数组中加上/删除项目

变更原先数组

返回给删除的元素


11、 unshift()

往数组的初步添加一个还是多单要素

转原数组

回新数组的尺寸

A选项,a.reverse()后回到回值即数组a变成[3,2,1],再运unshift()方法在频繁组开添加一个4,a数组就是成为了[4,3,2,1]。注,unshift()返回新数组的尺寸,此处为4。正确。

B选项,push()方法返回新数组的尺寸,是一个number类型,不是累组,所以未可知重新用“.”操作符继续执行reverse()方法。错误。

C选项,正确。

D选项,splice()语法:arrayObject.splice(index,howmany,item1,…..,itemX)。
参数:
index:必需。整数,规定添加/删除项目之位置,使用负数可由数组结尾处规定岗位。
howmany:必需。要删减的门类数目。如果安也 0,则不见面去除项目。
item1, …, itemX:可选。向数组添加的新品类。
返回值:
Array:包含被删去项目之新数组,如果部分话。

由于a.splice(3,1,4)中的index为3,超过了数组a的下标,所以3背后的1啊不见面起作用。a.splice(3,1,4)会用4栽入到数组a末尾。但splice()返回值是受剔除项目之初数组,由于a.splice(3,1,4)并无去除元素,所以回来的初数组为空,对空数组reverse()还是拖欠。(如果D选项改成化a.splice(3,1,4);a.reverse()就对了。)错误。

 

  1. HTTP2.0

https://www.zhihu.com/question/34074946

多路复用

多路复用允许以通过单一的 HTTP/2 连日发起多重复的伸手-响应消息。

,在 HTTP/1.1 协议中
「浏览器客户端在同一时间,针对同一域名下的请有自然数额限制。超过限制数量的乞求会叫堵塞」。

得叫要添加优先级

服务器主动推送 server push

首部减少:HTTP2的脑部会削弱多少,从而减少流量传输

 

  1. position: sticky 

  CSS属性选择用于固定元素的代表规则,被规划吧对台本动画效果来因此。position属性中极度有趣的即是sticky了,设置了sticky的要素,在屏幕范围(viewport)时欠因素的职务并无被一定影响(设置是top、left等特性无效),当该因素的职将移出偏移范围时,定位又会化为fixed,根据设置的left、top等特性改为固定位置的效力

 

咱得贯彻动态加载一个 JavaScript 资源,但是来几乎处在不晓怎样处理,需要你的帮助完成就无异桩工作

var script = document.createElement(“script”);

var head = document.getElementsByTagName(“head”)[0];

 

script.type = “text/javascript”;

script.src = “//i.alicdn.com/resource.js”;

 

// 绑定资源加载成功事件

script. 1 = function( ){

// 判断资源加载状态是不是也加载成功或加载成功

if( 2 . test (script. 3  )  ) {

script.onreadystatechange = null;

. . . .

}

};

 

// 绑定资源加载失败事件

script. 4 = function( ) {

. . . .

};

head.insertBefore (script , head.firstChild)

 

(1) onreadystatechange
(2) /^(loaded|complete)$/
(3) readyState
(4) onerror

 

6.

http://www.cnblogs.com/dailc/archive/2016/10/04/5930238.html

  • Native App

就传统的原生APP开发模式,Android基于Java语言,底层调用Google的
API;iOS基于OC或者Swift语言,底层调用App官方提供的API。体验最后。

  • Web App

即便运动端的网站,将页面部署在服务器上,然后用户采取各大浏览器访问。一般泛指
SPA(Single Page Application)模式开发出之网站。体验最好差。

  • Hybrid App

纵然混合开发,由Native通过JSBridge等方式供合的API,然后用Html5+JS来写实际的逻辑,调用API,这种模式下,由于Android,iOS的API一般发生一致性,而且最终之页面吗是当webview中形,所有来超常平台效应

  • React Native App

Facebook发起的开源的一样效新的APP开发方案,使用JS+部分原生语法来实现力量。初次学习成本较高,但是于入门后,经过精美的包装也克落实多数之跨平台。而且体验好好。

对比Hybird和React Native

hybird的面世就是为着呈现,说实话如果没css,或许hybird这种东西就非会见冒出。如果你打算开一个谍报客户端,hybird绝对是未次之选择。而相互永远是hybird的疼痛,且不说android局部滚动与ios的各种fixed与input的基情,就终于各种屏幕分辨率的拍卖方案还得恶心的思量呕吐了。

苟rn这种事物,其实若管语言转换成java
oc一样可以兑现,只不过模块化弱类型动的js写这种事物再舒服而已。由于是根据native实现,rn可以免掉我们地方说的具有题目,但是hybird带来的优势为会大打折扣:
write once,use anywhere降级成了learn once,write
anywhere,当然矣政工逻辑还是得以复用的。同样的兵不血刃的css被阉割割掉了成百上千特性和整的层次选择器,展现力没有那高了,但究竟要略胜一筹的。
链接:https://www.zhihu.com/question/38123798/answer/75028325

7.

IndexdDB 是 HTML5 的地面存储,把有数存储到浏览器(客户端)中,当跟网断开时,可以自浏览器中读取数据,用来开一些离线应用。

Cookie 通过在客户端 ( 浏览器 ) 记录信息确定用户身份,最特别也 4 kb 。

url 参数用之是 get 方法,从服务器上获取数据,大小不可知压倒 2 kb 。

Session 是服务器端使用的如出一辙种记录客户端状态的建制 。

post 是朝着服务器传送数据,数据量较生。

local Storage 也是 HTML5 的当地存储,将数据保存于客户端挨。

8.

原型链找不交常,返回的凡undefined而非是null;

  1. 出口对象中值大于2之key的数组

var data = {a: 1, b: 2, c: 3, d: 4};

Object.keys(data).filter(function(x) { return 1 ;})

期待输出:[“c”,”d”]

参考答案 
(1) data[x]>2

 

Object.keys(Object)

Array.filter(function)

Object是包含属性和办法的靶子, 可以是开创的对象或现有文档对象模型 (DOM)
对象。

Object.keys(object)的返回值是 一个再三组,其中包含对象的可是枚举属性和艺术的号。

Array.filter(function)对数组进行过滤返回符合条件的数组。

Object.keys(data)的返回值为数组[“a”,”b”,”c”,”d”],经过 filter(function(x)
{
return ; })过滤,返回值大于2底key的数组。x为回去数组的性质名称即使“a”、”b”、”c”、“d”,则对应的属于性值为data[x],比较语句也data[x]>2。

 

10.

.sub{

    width: 100px;

    float: left;

}

.extra{

    width: 200px;

    float: right;

}

.main{

    margin-left: 100px;

    margin-right: 200px;

}

 

.sub, .extra {

    position: absolute;

    top: 0;

    width: 200px;

}

.sub {

    left: 0;

}

.extra {

    right: 0;

}

.main {

    margin: 0 200px;

}

 

.layout {

    display: flex;

}

.main {

    flex: 1;

}

.aside {

    width: 200px;

}

 

11.未曾数的下的饼图

12.IPV6和IPV4的区别

http://blog.csdn.net/zjuxsl/article/details/44757791

  1. 前者里神奇的BFC
    原理分析

http://www.cnblogs.com/lhb25/p/inside-block-formatting-ontext.html

14.
ES6块级作用域及新变量声明(let)

http://www.cnblogs.com/snandy/p/4485832.html

15.ES6模块的贯彻

http://www.cnblogs.com/vs1435/p/6553134.html

16.论现代前端组件化框架一些要害特性实现的法则

组件化机制

数量绑定机制

上下级组件之间数据传递的机制

17.函数柯里化

 

 

8-24

1.箭头函数能否作为构造函数

2.react状一个倒计时(聚划算这种)

(自身与服务器时间的联手问题?)

3.元素相对于浏览器左上角的相距

rectObject = object.getBoundingClientRect();

返回值是一个 DOMRect 对象Bootstrap,这个目标是出于该因素的 getClientRects() 方法返回的一样组矩形的汇聚,
即:是跟该因素相关的CSS 边框集合 。

DOMRect ``对象包含了一组用于描述边框的只读属性``——left``、``top``、``right``和``bottom``,单位为像素。除了`` width ``和`` height ``外的属性都是相对于视口的左上角位置而言的。

 

——————————————————————————————————————

1.而是一个怎么的丁?请你选择三独词描述自己。为了描述又鲜活,每个描述词后请举例说明。(限300许)

和睦相处:从小到非常每个集体总有以各种缘由显得甚弱势的口,我还见面于看不下去的时段拉一将。
精力:虽然研究生毕业已25载了,但是自己也许以妻子来个姐姐,所以自己的情绪又年轻,碰到挫折也未易于被打击。
腾飞:虽然非是计算机系,但是我对计算机的爱促使自己克服了样困难完成学业的同时控制了多点的技能。

2.前景,您想自己化一个如何的口?为是公付出了哪努力?(限300许)

未来己欲从电脑方面的工作,在技术方面多加磨炼,成为一个天地的大牛。
自身本科及研究生虽然均未是计算机系,由于针对计算机编程的爱慕,从研究生入学起,两年时光的色开发经历,使得自己之编程能力产生了老十分的增高。有记录与分享的惯,
有投机长期更新的技能博客。
技术上面对电脑网络,基本算法和数据结构有比好之左右。熟练掌握JavaScript语言,包括ES6片特色,原生JS
基础扎实。熟练掌握HTML5,CSS技术,包括但非压制跨域,Session,flex布局等技术。
熟悉Web
框架Backbone,React,JS框架Jquery,underScore,Css框架Bootstrap等主流框架,并且针对vue也有所了解,并且对源码有了学与研读。
后端上于友好之种遭到以了PHP和Node.js,使用express框架配合moongoose使用了MongoDB,了解并会采取MySql数据库,熟悉数据库的主导处理。
此外,在本科和研究生期间,积极参加校内校外实践活动,并多不行获奖学金,研究生学业奖学金两不善。语言方面通过CET-6,具备阅读英文文献同中坚的关系能力。

3.若怎么对待自己毕业后的率先份工作?为什么?(限300字)

率先客工作本身当能上好企业就是进大企业,中国移动就是其中的杰出,以中国移动举例,中国移动的平台是大酷的,作为国家背景的运营商旗下之支行物联网公司也是一样。在当时中种之水准与数目都是死高的,对好是坏好之磨砺,而且我自家是南京人,不希望所在跑,最好会于一个稳定的合作社中一直着力成长就是好了。

4.您为何选应聘中移物联网有限公司?您要中移物联网有限公司会被您带来什么?(限300许)

中国移动作为当今叔那个运营商中的龙头,中移物联网公司当他旗下的互联网公司,既出国企规范之优势,也产生互联网快速的特性,选择如此的公司当第一客工作室理所应当的。
自身个人要公司可于本人成长之平台及稳定性的腾飞,我信任自己及中移的实力会愈来愈大。

 

 

 

8-25

  1. 认清check是否选中?如果选中check元素?
  2. HTTPS加密原理

http://www.cnblogs.com/Yfling/p/6670495.html

  1. 前端安全学RSA非对如加密,DES对如加密
  2. 可以问问被面试官的 前端DES这种对如加密产生什么用?前端加密是否发生义?
  3. ParyTheLord 16:13:49

ParyTheLord 16:13:49

邱总,额我眷恋问问一下,,我而描写死定时调度的语,写于充分型之哪拍?,,

邱添 16:14:55

你会spring框架么

邱添 16:15:09

卿可以描绘一个因spring框架的调度

邱添 16:15:21

种里面放了spring框架

邱添 16:15:43

要么你得写一个java程序,然后重新linux做调度任务邱总,额我怀念问问一下,,我如果描绘好定时调度的言辞,写以雅型之乌拍?,,

  1. 模拟HTTP请求http://blog.csdn.net/pathuang68/article/details/6920076

 

8-28

 

 

8-29

首先,并无是说公平打开一个页面就见面发生一个session。
所谓session你可如此敞亮:当您同劳动端进行对话时,比如说登陆成功后,服务端会为而开壁一片内存区间,用以存放你这次会话的一些内容,比如说用户称之类的。那么就需一个东西来表明是内存区间是若的若未是他人的,这个事物便是session id(jsessionid只是tomcat中对session id的叫法,在另容器内,不自然就是是叫jsessionid了。),而以此内存区间而可以了解为session。
然后,服务器会将是session id发回给您的浏览器,放入你的浏览器的cookies中(这个cookies是外存cookies,跟一般的非平等,它见面趁浏览器的倒闭而逝)。
事后,只有你浏览器没有关,你各个于服务器发请求,服务器即见面从你发送过来的cookies中拿出此session id,然后根据此session id到对应的内存中取得公前面存放的数量。
不过,如果你离登陆了,服务器会清掉属于您的内存区域,所以若又发表的话语,会有一个初的session了。
不好意思,我可能说得不顶懂得,但就上面的学识网上有多,你可了解下session的原理。

 

8-30

  1. JS异步(通俗)http://www.cnblogs.com/penghuwan/p/7451409.html
  2. 没IE就从不损害!浏览器兼容性问题解决方案汇总

http://www.cnblogs.com/huang361964533/p/7451956.html

 

 

 

8-31
1.

3.BFC

4.风波节流

5.回调XX(没听懂)

6.贯彻一个浏览器中标签页间的报导用啊艺术

7.废物回收

8.状态码304

9.文档过期时怎么设置

10.ES6语法

11.庸设置一个当PC端与手机端都可浏览的页面

12.庸落实从适应布局,媒体询问

13.JS模块化,AMD,CMD。。。

14.代码团章程

15.庸上前端

16.跨域JSONP前后端有啊约定啊

身为非科班出身,感觉重,努力加油吧,很多扣了没因此过,面试问的老大详细,很多恢弘,感觉比较青睐“你用了也?”,这如是面试中出现频率高的乐章了,当然还有“没事”。

各位加油吧!!

  1. promise,asyn await,还说了一个es6的一个异步处理主要字,
    defer关键字,闭包,局部变量提升作用域,页面渲染,页面加载过程,图片懒加载,还有,但现非记了,让自身渐渐思考,我再次添加来

 

 

9-4

美图

编程题

1.$.extend

2.DOM操作

3.正则

4.去重新以及合

简答

  1. 跨域
  2. 特性优化
  3. ES6

 

9-6

  1. 羡辙的CV
  2. 出入栈和LINUX问题 技术之瞳里面有

 

9-7

  1. 投简历,改论文,笔,网站,技术之瞳
  2. 民用评价:聪明,乐观,皮实,自省(技术的瞳P8)
  3. 面试:比较老的问题可友善查到,个性化的题材:推荐可自己的修,论坛等,JS安全性
  4. 处理器网络

面试时考:https://www.nowcoder.com/discuss/1937

①   网络协议三要素:语义,语法,交换规则

②   在公钥密码体制中,不明白的凡  (私钥) 。

③   表示层的首要成效是–关注所传递的音讯之布局,语法和语义

④   从运输层的角度看,通信的确实端点是–进程。

⑤   关于IP地址

https://www.nowcoder.com/test/question/done?tid=10715152&qid=3488#summary

  1.  flex布局中align-items
    和align-content的区别

6.
求各位数字和:利用432/10=>43之特色,得到去划一号的数字,不断%10拿走各国一样各类。

  1. 针对行内元素设置margin-top 和margin-bottom是否由作用

不起作用。(需要专注行内元素的更迭元素img、input,他们是行内元素,但是可以呢那安装宽高,并且margin属性也是针对性其由作用的,有着类似于Inline-block的一言一行)

  1. 对内联元素设置padding-top和padding-bottom是否会见增加她的惊人

不会见。同上题,要留心行内元素的轮换元素,img设置padding-top/bottom是碰头于作用的。

9.问:如果安<p>的font-size:
10rem;那么当用户重置或拖延拽浏览器窗口时,它的文本会不见面面临震慑?

答:不会。

rem是css3初长的一个针锋相对单位(root
em,根em),这个单位招了广大关注。这个单位及em有什么分别吗?区别在运用rem为要素设定字体大小时,仍然是相对大小,但相对的光是HTML根素。

 

9-11

SMTP :全称是“Simple Mail Transfer
Protocol”,即简单邮件传输协议。它是一模一样组用于从源地址及目的地址传输邮件的正儿八经,通过其来控制邮件的转向方式。SMTP
协议属于 TCP/IP
协议簇,它帮忙各级台电脑以发送或转化信件时找到下一个目的地。SMTP
服务器即是遵照 SMTP 协议的殡葬邮件服务器。 

POP3:举凡Post Office Protocol
3的简称,即邮局协议的第3只本子,它规定如何用个人计算机连到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一只离线协议正式,POP3允许用户从服务器上把邮件存储到地方主机(即好之微机)上,同时删除保存在邮件服务器上之邮件,而POP3服务器则是遵循POP3共谋的接纳邮件服务器,用来接过电子邮件的。

博客中牵线,pop3:从服务器下充斥及地头;SMTP:发送或转发邮件。

 

  1. java/struts2/spring/ant.maven/devops
  2. 4.      
    计算机网络动态路由协和,子网掩码的用意,网络地址划分,各类地点之作用

 

9-12

1.JS在线编程格式

https://segmentfault.com/a/1190000010715910

2. 《计算机网络》第五版 复习笔记

http://blog.csdn.net/hcbbt/article/details/18271491

 

9-13

1.仗每年来校招的日子还大早,9月初,在宣讲会的前天自己简单看了java基础(准备的太晚),笔试来取舍题(比较基础)、简答题(较多,涉及java基础,网络TCP/IP,多线程等)、一道字符串反转编程题,两鸣智力题(如用简单独容器分水的题材,很宽泛),最后一道主观题,总体来说问题不难,比较基础,只是自己并未复习完,但是还是受通报了千篇一律面对,也时有发生为数不少同室被刷了,看来刚开头多人数还没好复习,我归功给流年。一面有个别独对试官,都挺好,看自己简历及勾的凡驾轻就熟C++和java,就咨询我java和C++的界别,还有即使是问问项目,但自己开的java的花色比较长久了,我耶从来不可以准备,总之面的坏,就这样要叫通报了次迎,说是人事面,一个HR面2个人,大概就是怎样联系处事,HR面前发生同一摆设纸,我看来了友好的大成,笔试和单之成绩,都于没有,后来HR跟自己说一样面对之面试官觉得我Java基础一般,建议我改变测试,让自身等于测试的面试通知。但是后来呢从未打招呼了,我的造化到是所以了了。不要相信运气,主要依赖实力。笔试成绩特别要紧,总之要早做准备,要不然只能眼睁睁看正在机遇从前方无影无踪。一开始我连无是很怀念进烽火,没有认真对照,但新兴察觉因友好的实力烽火已经是了,后面的群小卖部还未苟烽火,后悔自己从没理想准备,希望大家吸取我的训诫。 收起

面试官的题材:

问java和C++的区别?

报经我先是感应是java没有指针,当然就不是答案,面试宝典都产生,不过细说了

问java的付出经历?

报我记得不掌握了,没怎么说,自己而出彩准备项目。

问写一段子代码实现持续与多态

答只写了继续

问问项目蒙发生没起因此到数据库连接池?

报经没有吗要是说生,这是老大广阔的写,目前常用之是c3p0连接池,自己百度

问java设计模式还是数据库范式?

 

7.以下的呀一样种颜色格式支持上百万栽颜色,但是不支持无损压缩?

A、bmp

B、jpg

C、gif

D、tif

答案:A

http://blog.csdn.net/xq2768637066/article/details/50894608

 

 

9-18

手写filter

    var arr = [1,2,3];

    arr.filter2 = filter2;

         var re = arr.filter2(mid);

         function filter2(mid){

                   var hehe = [];

                   for(var i of this){

                   var rer = mid(i);

                   console.log(rer);

                   if(rer){

                            console.log(i);

                            hehe.push(i);

                   }

         }

         console.log(hehe);

         }

         function mid(z){

                   if(z<2){return true}

                            else{return false}

         }

 

2.外存泄漏

http://www.cnblogs.com/libin-1/p/6013490.html

 

3.
根本弄明白HTTP缓存机制以及原理

http://www.cnblogs.com/chenqf/p/6386163.html

 

  1. 5.       跨域

http://www.cnblogs.com/cndotabestdota/p/7150552.html

 

  1. 6.       春风得意团面经
  2. 物特别杂,每个都是咨询一个多少问题,把还能够想起起来的记录分享一下
  3. js基础(闭包,作用域,es6,this,实现filter,内存泄漏)
  4. css基础(重绘重排,选择器,伪类,继承,居中,布局)
  5. http基础(三差握手,代理,缓存机制,method)
  6. 跨域
  7. 内外相互的数量
  8. 兑现响应restful api的路由
  9. 逢的性能优化及化解的问题

 

作者:Say37
链接:https://www.nowcoder.com/discuss/37841
来源:牛客网

一样达到来面试官就叫自家介绍下自家开的门类。我介绍了后,就从来不然后了(当时自己觉着会深问)。

然后便是编程了。

1.经的柯里化问题。编写一个函数,实现add(2)(3)。

2.作用域问题。

var length = 10;

function fn() {

console.log(this.length);

}

var obj = {

length: 5,

method: function(fn) {

fn();

arguments[0]();

}

};

 

obj.method(fn, 1);

问会输出什么?这个我回的不好,但是面试官说(⊙v⊙)嗯,也从没被自身纠错。哎╮(╯▽╰)╭

3.叔个是出口<body>下面的季单<a>标签对应之目。这个也总了,但是写的下发生缺点,哎╮(╯▽╰)╭

4.所以2至3行写来二维数组变成一维数组的函数。

自身之笔触是为此slice接口把数组中的如出一辙各类数字切出来,然后拼接concat下一样各项数字。有好的笔触,留言哈

接下来编程就终止了。其中最为着重的凡楼主没因此过牛客网上的JavaScript(node
0.12.12)编程过,所以全程就相当于是以张上写代码。会了就无见面作这样多低级错误了。(磕墙……)

之后咨询了有题材。

1.老三排布局怎么落实啊,都发出什么样措施。

2.flex搭架子了解呢?

3.近来在圈呀新技巧?

4.关押了怎样博客逛了怎样论坛?

5.怎么学前端的?

6.而道好还有如何优点。

 

作者:Lx15
链接:https://www.nowcoder.com/discuss/37900
来源:牛客网

  1. 自我介绍

  2. 何以选前者

  3. 说一下html5 与html4   

  4. html5 都连什么,我干语义化,然后问 em/strong/i 都怎么用底

  5. canvas 与svg 

  6. requestAnimationFrame 

  7. http 协议的格式

  8. base64 的原理

  9.  表单上传图片的请求格式是何许的

  10. get post 区别

  11. 以及源策略 

接下来没了,,一共24min, 面试官很nice,
第一赖通电话我于宿舍,第二潮我当电梯,第三不好才正式开始,希望nice的面试让了啊。。。。

笔者:offer真的来了
链接:https://www.nowcoder.com/discuss/37117
来源:牛客网

2、bootstrap 布局,栅格布局 ,怎么处理不同装备上之异样

3、http 304 状态码是什么意思?其他状态码?HTTPS

4、ajax跨域,有怎么样解决方式,举了几乎独实例让贯彻跨域,访问子域算不到底跨域等之类

5、一两独简单的终于法题(记不清了)

6、求数组中极要命勤

7、事件委托,点击 ul 中之li 弹出li内容,动态添加li

8、原型链继承:    b.prototype =new a() 不对准吧? 

9、es6 ,异步原因,promise set map等等

10、事件流 

11、cookie

12、数组去又

13、项目

 

9-20

  1. 1.      
    http等方面总结http://www.cnblogs.com/haoyijing/p/5898420.html#html11

目录:

  1. Cookie
    是否会面为埋,localStorage是否会见吃掩?
  2. 什么保障登陆状态?
  3. Ajax原生
  4. Jsonp的规律。怎么去读取一个script里面的数据。
  5. 苟页面初始载入的早晚把ajax请求返回的数目是localStorage里面,然后每次调用的时光失去localStorage里面取数,是否有效。
  6. 304凡啊意思?
  7. 强缓存和商事缓存的命中和治本
  8. http请求和响应的信结构
  9. http请求头有哪些字段
  10. http响应常见状态码
  11. 简述http 1.1 与 http
    1.0的区别
  12. 伸手列举三种禁止浏览器缓存的头字段,
    并写来相应的设置值
  13. 与客户端浏览器缓存相关的http头
  14. Cookie跨域请求能无克带齐
  15. js异步的章程(promise,generator,async)
  16. Get和post的区别
  17. Post一个file的时刻file放在哪的?
  18. 其三糟握手
  19. tcp/ip/http对许哪一样重叠
    七层模型
  20. 浏览器被输入网址后到页面展现的经过
  21. 浏览器是哪些进展加载, 解析, 渲染之吧?
    重点说一下浏览器渲染页面的过程?
  22. cookie和session的区别
  23. 联手同异步的分别
  24. 浏览器发送cookie时见面发送哪几个部分?
  25. cookie由哪几有些组成?
  26. 要描述一下 cookies,sessionStorage 和 localStorage
    的区别?
  27. 浏览器本地存储和劳务器端存储之间的分
  28. sessionStorage和页面js数据对象的别

  1. js实现跨域

9-22

  1. 1.       css之父写的,前opera CEO
    博士论文:层叠样式表
  2. 2.       React 源码剖析系列 - 不可思议的 react diff

https://zhuanlan.zhihu.com/p/20346379

3.React源码分析1 —
框架

http://blog.csdn.net/u013510838/article/details/55669742

  1. 3.       单向数流 flux

它们发起下flux模式来进展零部件间数传,这种做法让unidirectional data flow(单为数据流),单为数据流的补益是暨前面angularJS提出的two-way data binding互相比较而言,因为单向,所以各种变化都是不过预测、可决定的。不像two-way data binding那么,变化一不过复杂起来,大家都竞相接触变化,到终极一个地方换了,你从来猜不出来她还见面导致其他什么地方接着一块儿变。这个得大量推行才能够有感受,如果你初学,那听听就终于了,不必死磕。

  1. 4.       Virtual dom

这事物的利益是削减DOM操作,减少DOM操作的目的是增强浏览器的渲染性能

  1. 5.       Diff算法

6.多少绑定

7.  组件化开发

 

8.react发生啊用?优点和短有怎么样?

喜欢React的丁不少,但是好她的由尚且无太一样

于现实的长处:

能够落实劳务器端的渲染,便于寻找引擎优化。这无异点使比Backbone, Angular
1.x同Ember早期强

可知很好的与水土保持的代码结合。React只是MVC中之View层,对于其余的有的并无硬性要求。意味着多供销社于甄选用Angular全部重构和用React部分重构的时光,选择了React部分重构

为一切都是component,所以代码更加模块化,重用代码更爱

拟起来非常容易,几个钟头便可入门

因为强调只有由this.props和this.state生成HTML,写起bug比较少

于高大上之独到之处,就是大家在大会上会见说之助益:

因为用了virtual dom,所以性能大好

因强调只是从this.props和this.state生成HTML,所以杀之functional
programming

缺点:

连无是一个一体化的框架,基本都要添加ReactRouter和Flux才能够写大型应用

 

9-25

1.
DNS劫持的现象:你输入的网址是http://www.google.com,出来的是百度的页面。

HTTP劫持的光景:你打开的凡知乎的页面,右下角弹出唐老师的不孕不育广告。

  1. 光阴复杂度

http://www.cnblogs.com/huangbw/p/7398418.html

3. D3.js是一个数据可视化的库,看看他们的DEMO就可以知道,技术基础是SVG。兼容性是IE9+。

  webgl是HTML5中提出的新技术,是一种3D绘图标准,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,关于它的教程可以看看hiwebgl。目前兼容性堪忧

  three.js是以webgl为基础的库,封装了一些3D渲染需求中重要的工具方法与渲染循环。它的教程同样可以在hiwebgl里面找到。

  three.js之于webgl,类似于windows版本的虚幻引擎之于D3D。当然,虚幻引擎的能力范围比three.js大得多。d3.js跟上面两者没有关系。

4.   这两个引擎各有所长的,具体那个好要看目的是什么。

  OpenGL经过多年的洗刷,已经成为绘图引擎的标准,OpenGL的绘图质量毋庸置疑,是最高的,OpenGL的编程相对的也会比较复杂,但是上手很简单,OpenGL用来追求完美的绘图精确度,而且通常有各种辅助库可以用来往其他设备上输出数据,比如打印机。

  DirectX的专为游戏而生,它的绘图精度满足一般游戏的所需,而且DirectX还包含了不少用来在游戏中处理其他数据的辅助库,包括声音数据,输入输出,等等等等。

  所以,想专精追求绘图,OpenGL是首选,如果要编程效率和其他功能DirectX是首选。

5. 羡辙-着色器-卡通渲染 https://zhuanlan.zhihu.com/p/25595069

http://www.cnblogs.com/wanbo/p/6754066.html[图解WebGL&Three.js工作原理](http://www.cnblogs.com/wanbo/p/6754066.html)

Three.js入门指南https://read.douban.com/ebook/7412854/

 

 

9-26. 邮科院被私自

9-27. 

1.VPN原理

2.
SSH原理同应用(一):远程登录http://www.ruanyifeng.com/blog/2011/12/ssh\_remote\_login.html

3.cnpm实在好用!!!

gulp环境遭受 gulp-sass为何一直安装失败?

https://www.zhihu.com/question/48845226/answer/113193051

  1. Gulp 方法

http://www.cnblogs.com/White-Quality/p/5756106.html

率先,gulp的源码里没有其余一样有是概念pipe的。

https://segmentfault.com/q/1010000003861104?sort=created

gulp的pipe方法是根源nodejs stream API的。
gulp本身是由于同密密麻麻vinyl模块组织起的。

http://www.ydcss.com/archives/424

 

  1. 6.       计算机工程以及利用

http://muchong.com/html/201303/5591922.html

http://muchong.com/bbs/journal\_cn.php?view=detail&jid=358

相关文章