localstorage(浏览器本地存储)?超容量会怎么样?localstorage同源问题
超容量就会报错
同一浏览器的相同域名和端口的不同页面间可以共享相同的 localStorage,但是不同页面间无法共享sessionStorage的信息。页面仅指顶级窗口,如果一个页面包含多个iframe且他们属于同源页面,那么他们之间是可以共享sessionStorage的。
SPA如何减少首次请求次数
路由懒加载 优化spa应用的首次加载白屏情况
css动画:1s后变大,2s后变圆
<html>
<body>
<div class="div">
</div>
</body>
<script>
</script>
<style>
.div{
width: 100px;
height: 100px;
position: absolute;
background: #C94E00;
opacity: 1;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
animation: change 2s , change2 4s;
}
@keyframes change{
from {width: 100px;height: 100px;}
to {width: 200px;height: 200px;}
}
@keyframes change2{
from {width: 200px;height: 200px;}
to {width: 200px;height: 200px;border-radius:50%;}
}
</style>
</html>
判断数组值相等
var a=['1','2','3',4].toString();
var b=['1',2,3,'4'].toString();
var c=['1',2,3,'4'].toString();
console.log(a==c)//true
console.log(b==c)//true
var a=['1','2','3',4];
var b=['1',2,3,'4'];
var c=['1',2,3,'4'];
console.log(a==c)//false
console.log(b==c)//false 引用类型 地址不同
var a=['1','2','3',4];
var b=['1',2,3,'4'];
var c=['1',2,3,'4'];
console.log(JSON.stringify(a)==JSON.stringify(c))//false
console.log(JSON.stringify(b)==JSON.stringify(c))//true
async和defer有什么区别?
1.<script src="script.js">
没有 defer 或 async,浏览器会立即加载并执行指定的脚本,“立即”指的是在渲染该 script 标签之下的文档元素之前,也就是说不等待后续载入的文档元素,读到就加载并执行
2. <script async src="script.js">
有 async,加载和渲染后续文档元素的过程将和 script.js 的加载与执行并行进行(异步),即异步下载脚本时,不会阻塞文档解析,但是一旦下载完成后,立即执行,阻塞文档解析。
3. <script defer src="myscript.js">
脚本会被异步下载但是不会被执行,直到文档的载入和解析完成,并可以操作,脚本才会被执行。
Vue路由跳转的方式方法
1.router-link 实现方式
<router-link :to="{name:'home'}">
2.this.$router.push() (会在history中留下记录,按返回按钮能够返回)
传参有两种方式:query和params
其中,query类似于get,params类似于post
3.this.$router.replace() (不会在history中留下记录,按返回按钮不能够返回)
4.this.$router.resolve()(跳转打开新的窗口)
null和undefine区别
null==undefined//true
null==undefined//false
undefined:是所有没有赋值变量的默认值,自动赋值。
null:主动释放一个变量引用的对象,表示一个变量不再指向任何对象地址
ajax请求步骤
1.创建XMLHTTPREQUEST对象
2.为对象设置回调函数
3.利用open方法与服务器建立连接,并设置请求方式、请求头等相关信息
4.利用send方法发送
5.监听状态变化,接收数据
css实现透明的几种方式:
1.opacity:选择器匹配到的节点们,包括节点们的孩子节点
2.rgba:选择器匹配到的节点们,当且仅当匹配到的节点,不包括其孩子节点
promise.then(a,b) 和 promise.then(a).catch(b)有什么不同
第一个 a出现异常 b捕获不到
第二个 a出现异常 b能够捕获到