杂文
-
let c = ''; cc.tirm() === ''
// 为true -
console.dir();
// 打印对象 - 数组的循环删除 用for 循环 i-- 删除
-
findIndex()
方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置。 - 'use strict' 严格模式
Cookie
Cookie的maxAge决定着Cookie的有效期,单位为秒(Second)。Cookie中通过getMaxAge()方法与setMaxAge(int maxAge)方法来读写maxAge属性。 如果maxAge属性为正数,则表示该Cookie会在maxAge秒之后自动失效。浏览器会将maxAge为正数的Cookie持久化,即写到对应的Cookie文件中。无论客户关闭了浏览器还是电脑,只要还在maxAge秒之前,登录网站时该Cookie仍然有效。下面代码中的Cookie信息将永远有效。
Cookie cookie = new Cookie("username","helloweenvsfei"); // 新建Cookie
cookie.setMaxAge(Integer.MAX_VALUE); // 设置生命周期为MAX_VALUE
response.addCookie(cookie); // 输出到客户端
如果maxAge为负数,则表示该Cookie仅在本浏览器窗口以及本窗口打开的子窗口内有效,关闭窗口后该Cookie即失效。maxAge为负数的Cookie,为临时性Cookie,不会被持久化,不会被写到Cookie文件中。Cookie信息保存在浏览器内存中,因此关闭浏览器该Cookie就消失了。Cookie默认的maxAge值为–1。
如果maxAge为0,则表示删除该Cookie。Cookie机制没有提供删除Cookie的方法,因此通过设置该Cookie即时失效实现删除Cookie的效果。失效的Cookie会被浏览器从Cookie文件或者内存中删除:
Cookie cookie = new Cookie("username","helloweenvsfei"); // 新建Cookie
cookie.setMaxAge(0); // 设置生命周期为0,不能为负数
response.addCookie(cookie); // 必须执行这一句
response对象提供的Cookie操作方法只有一个添加操作add(Cookie cookie)。要想修改Cookie只能使用一个同名的Cookie来覆盖原来的Cookie,达到修改的目的。删除时只需要把maxAge修改为0即可。
注意:从客户端读取Cookie时,包括maxAge在内的其他属性都是不可读的,也不会被提交。浏览器提交Cookie时只会提交name与value属性。maxAge属性只被浏览器用来判断Cookie是否过期。
页面加载过程
- http协议的默认端口为80,https协议的 默认端口是443
- dns-prefetch DNS缓存 能有效减少请求
<link rel="dns-prefetch" href="//dns.bootcss.com">
- 资源加载过程:
URL解析 --> DNS查询 --> 资源请求 --> 浏览器解析 - 浏览器解析过程:
DOM --> js执行 --> DOM --> 构建渲染树(根据dom和CSS) --> 布局(确认元素位置) --> 绘制
从地址栏输入网址时,敲下回车后,发生哪些了哪些事情?
- 浏览器向DNS服务器(先查找缓存)查找输入URL对应的IP地址
- DNS服务器返回对应的IP地址
- 浏览器根据IP地址与目标web服务器在80端口上建立TCP连接
- 浏览器获取请求页面的html代码
- 浏览器在显示窗口内渲染HTML
- 窗口关闭时,浏览器中止与服务器的连接
HTTP
相同点
- 都是采用同一个基础协议作为HTPP或HTTPS客户端—浏览器
- 设立一个连接到Web服务器指定的端口
- 服务器接收到请求,会返回一个状态码以及消息
- 系统使用统一资源定位器URI模式,因此资源可以被唯一指定
不同点
- HTTP的URL是以http://开头。HTTPS的URL是以https://开头
- HTTP是不安全的,HTTPS是安全的
- HTTP是80端口,HTTPS是443端口
- 在OSI网络模型中,HTTP处于应用层,HTTPS工作在传输层
- HTTP无需加密,HTTPS需要加密
- HTTP无需证书,HTTPS需要安装证书
- http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全
- https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
vue懒加载
- 懒加载也叫延迟加载,即在需要的时候进行加载,随用随载
- 在单页应用中,如果没有应用懒加载,运用webpack打包后的文件将会异常的大,造成进入首页时,需要加载的内容过多,延时过长,不利于用户体验,而运用懒加载则可以将页面进行划分,需要的时候加载页面,可以有效的分担首页所承担的加载压力,减少首页加载用时
//路由中配置异步组件
export default new Router({
routes: [
{
mode: 'history',
path: '/my',
name: 'my',
component: resolve => require(['../page/my/my.vue'], resolve),//懒加载
},
]
})
//实例中配置异步组件
components: {
historyTab: resolve => {require(['../../component/historyTab/historyTab.vue'], resolve)},//懒加载
//historyTab: () => import('../../component/historyTab/historyTab.vue')
},
// 全局注册异步组件
Vue.component('mideaHeader', () => {
System.import('./component/header/header.vue')
})
学习目标
- Git
最流行的版本控制系统之一。没有 Git 再也无法生存。- SSH
它允许你远程登录到另一台主机,这是另一个流行的、每个 Web 开发人员都应该知道的网络概念。- HTTP/HTTPS
HTTP 协议是 Web 的基础,对于 Web 开发人员来说,必须熟悉 HTTP 和 HTTPS。- 终端的基本用法:Linux 命令行基础
不仅仅是 Web 开发人员,对于任何程序员来说,Linux 命令行都是非常非常重要的,我强烈建议你花一些时间来学习它们。
- 数据结构和算法
这是任何程序的构建块,更好地了解算法和数据结构是你在下一份工作或当前工作中做得更好的关键。
如果你对学习算法和数据结构感兴趣,我建议你选择你所了解的编程语言的课程。
- 字符编码
如果你正在创建全球应用程序,其中显示了世界上许多不同语言的信息,那么你应该精通字符编码。它本质上是告诉浏览器如何显示你的数据。- GitHub
毫无疑问,每个程序员都应该了解 Git 和 Github,因为它们是版本控制和代码库方面的标准。
webpack设置反向代理
- 正常的请求http://localhost:8086/manage/user/login.do,可能会请求不到需要在localhost后面加一个点,
http://localhost.:8086/manage/user/login.do;
加了点之后页面打开会提示Invalid Host header
这个原因是:新版的webpack-dev-server出于安全考虑,默认检查hostname,如果hostname不是配置内的,将中断访问。
必须设置disableHostCheck: true
devServer: {
port: 8086, // 更改默认端口
disableHostCheck: true,
historyApiFallback: {
index: '/dist/index.html'
},
// 设置反向代理
proxy : {
'/manage' :{ /* 监听的地址例如ajax:(url: '/manage/user/login.do')*/
target:'http://admintest.happymmall.com',
changeOrigin:true,
}
}
}
网友评论