Skip to content

Latest commit

 

History

History
88 lines (57 loc) · 3.61 KB

Untitled.md

File metadata and controls

88 lines (57 loc) · 3.61 KB

同步阻塞调用:得不到结果不返回,线程进入阻塞态等待。 同步非阻塞调用:得不到结果不返回,线程不阻塞一直在 CPU 上运行 异步阻塞调用:去到别的线程,让别的线程阻塞起来等待结果,自己不阻塞

Vue react 的区别:
https 的工作原理
tap 事件
如何进行缓存 事件委托的缺点

  1. 如何保证公钥不被篡改 将公钥放在数字证书中,只要证书是可信的,公钥就是可信的
  2. 公钥加密计算量太大,如何减少耗用的时间? 解决方法:每一次对话(session),客户端和服务端都生成一个 对话密钥,用它在加密信息,由于“对话密钥” 是对称,所以运算速度非常快,而服务器公钥只用于

数组和链表的区别:

  • 数组是将元素在内存中连续存放的,由于每个元素占用内存相同,可以通过下标迅速访问数组中的任意元素,但是如果在数组中增加一个元素,需要移动大量的元素,在内存中空出一个元素的空间,然后将增加的元素放在其中,同样的道理,如果想删除一个元素,同样需要移动大量的元素去填掉被移动的元素,如果应用需要快速访问数据,很少删除或插入元素,可以使用数组。
  • 链表:链表中的元素在内存中不是顺序存储的,而是通过存在元素中的指针联系在一起,比如:上个元素有个指针指向下一个元素,一次类推,直到最后一个元素。如果要访问链表中的一个元素,需要从第一个元素开始,一直找到需要的元素位置,但是增加和删除一个元素对于链表数据结构就非常简单了,只要修改元素中的指针就可以了,如果应用经常插入和删除元素,就可以使用链表这个数据结构。

进程和线程的区别:

一个程序至少有一个进程,一个进程至少有一个线程。

当程序在执行的时候,一般会创建一个进程,也可以有多个进程,一个进程至少创建一个线程,多个线程共享一个程序进程的内存,程序的运行最终是靠线程来完成操作的,线程的数量跟CPU 核数有关,一个核最多发出两个线程,线程主要的操作是:

  1. 给 CPU 进行程序命令的执行
  2. IO 操作

你遇到的技术难题:

  1. 在写 Vuejs 的时候给一个组件添加一个默认值,但是组件还没加载完,使用 setTimeout
  2. 数据 Error handle
  3. Canvas 玻璃

介绍项目:

React 和 Vue 的生命周期

React 有 MOUNTING 和 UNMOUTING

组件的优点:

  1. 高效
  2. 使不同应用能够通信
  3. 可维护性

http 2.0 如何实现九宫格

jsonp 优缺点:

  1. 它不像XMLHttpRequest 对象实现 Ajax 请求那样受到同源策略的限制

  2. 兼容性很好,在古老的浏览器也能很好的运行

  3. 不需要 XMLHttpRequest 或 ActiveX 的支持;并且在请求完毕后可以通过调用 callback 的方式回传结果。

  4. 它支持 GET 请求而不支持 POST 等其它类行的 HTTP 请求。

  5. 它只支持跨域 HTTP 请求这种情况,不能解决不同域的两个页面之间进行 JS 调用的问题

媒体查询,rgba border-radius 圆角 box-shadow 阴影 transform

IE 与其它浏览器不一样的特性:

  1. IE: currentStyle, Firefox: getComputStyle
  2. innerText, textContent
  3. attachEvent, addEventListener
  4. srcElement, eventTarget
  5. ajax
  6. opacity: num, filter: alpha(opacity=num)

文件合并 style 放头部,script 放底部 避免页面跳转 css sprite 设置缓存 CDN 做动静资源分离 static.example.com/www.example.com 可以在静态域名上避免使用 cookie