level 11
钟离小暖
楼主
1、const 数组是否可以增加删除元素?
const不能修改的是栈内存在的值(基本类型)和地址(引用类型)
(1)那么就是对基本类型:赋值完不能改
`const PI = 3.141;`
` PI = PI+ 3.14; // 报错`
而且,声明的时候必须一起初始化掉,const PI; 这样只声明后续就不能赋值了。
(2) const 定义的变量并非常量,并非不可变,它定义了一个常量引用一个值。使用 const 定义的对象或者数组,其实是可变的。下面的代码并不会报错
`const car = {type:"Fiat", model:"500", color:"white"}; `
`car.color = "red";// 修改属性:`
`car.owner = "Johnson";// 添加属性`
但是我们不能对常量对象重新赋值:
`car = {type:"Volvo", model:"EX60", color:"red"}; // 错误`
修改操作,cars[0] cars.push都可以,但是只是*不能重新赋值*
2、es6数组方法
foreach、map、filter、find reduce(累加)
(不改变原数组的:fsmc
3、说了url的渲染整个过程
4、https(复习)
9、0.3+0.3=? ,为什么得不出正确答案(因为JS只有Number一个类型,不区分浮点数和int),怎么得出正确答案,一般是*1000再/1000比较简单,在做比较的时候。复杂也可以用库,比较的时候小于<Number.EPSILON 就行)
而且,0.1+0.2=0.3.....4 0.3相加好像没问题诶QWQ
15、get post 、 get post 前会option吗(跨域的时候会预检,)
13、symbol(a) 等于symbol(a) ?(不等于)
10、typeof instanceof undefund instanceof undefind(typeof会打印undefined 后面是false)
组件通信 (从小到大)
兄弟:vuex,eventBus;
爷孙 爷provide,孙inject $atrs $listener
父子:props ref $parent $children
nextTick原理
vue dom渲染的异步的,所以在同步代码里写获取更新后的获取不到,因为运行的时候还没有更新,写在nextTick里是获取更新后的新dom内容
6、hash history 为什么选择hash
哈希原理是a标签的#
当路由改变时,对相应的组件进行渲染。实际上还是底层监听了哈希变化,让页面某一部分展示成了你想让它。。展示的部分 【底层是onhashchange事件来监听变化】
histroy是push那种,history.pushState. window.onpopstate这样
浏览器认为它只是前进和后退的一种方式
7、什么时候要用多页面(mpa)
12、flex:0 1 auto(默认值)
(1) flex-grow, flex-shrink 和 flex-basis
1.flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。
2.flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。
3.flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。
(2)设置了flex auto是尽量满足大的元素,设置flex 1 是等量分配
16、切分数组(arr,n) 用slice返回新的、
单页式两种路由方式 :1 地址hash值变化的方法(利用锚点)
(1) a标签
(2) js修改url
(3) 手动修改url onhashchange触发(
(4) 浏览器前进后退
哈希路由本质改变的是锚点,不会向后台发请求。
当路由改变时,对相应的组件进行渲染。实际上还是底层监听了哈希变化,让页面某一部分展示成了你想让它。。展示的部分 【底层是onhashchange事件来监听变化】
2 h5histroy【需要后端配合】还是哈希用的多。两种都不会触发页面刷新
也是用url来规范(没有#号) ,但是不会刷新页面。模式和正常浏览器路径一样的,通常会触发后端的请求~ 但后端可以无论路径是什么返回固定的index.html 就不会产生资源的传输
history.pushState ({name:'index'}, " ", "index" }// /后面加的东西 title 加的路由的name
浏览器认为它只是前进和后退的一种方式
window.onpopState 监听浏览器的前进和后退变化。(传name、 传路径
2021年09月12日 06点09分
1
const不能修改的是栈内存在的值(基本类型)和地址(引用类型)
(1)那么就是对基本类型:赋值完不能改
`const PI = 3.141;`
` PI = PI+ 3.14; // 报错`
而且,声明的时候必须一起初始化掉,const PI; 这样只声明后续就不能赋值了。
(2) const 定义的变量并非常量,并非不可变,它定义了一个常量引用一个值。使用 const 定义的对象或者数组,其实是可变的。下面的代码并不会报错
`const car = {type:"Fiat", model:"500", color:"white"}; `
`car.color = "red";// 修改属性:`
`car.owner = "Johnson";// 添加属性`
但是我们不能对常量对象重新赋值:
`car = {type:"Volvo", model:"EX60", color:"red"}; // 错误`
修改操作,cars[0] cars.push都可以,但是只是*不能重新赋值*
2、es6数组方法
foreach、map、filter、find reduce(累加)
(不改变原数组的:fsmc
3、说了url的渲染整个过程
4、https(复习)
9、0.3+0.3=? ,为什么得不出正确答案(因为JS只有Number一个类型,不区分浮点数和int),怎么得出正确答案,一般是*1000再/1000比较简单,在做比较的时候。复杂也可以用库,比较的时候小于<Number.EPSILON 就行)
而且,0.1+0.2=0.3.....4 0.3相加好像没问题诶QWQ
15、get post 、 get post 前会option吗(跨域的时候会预检,)
13、symbol(a) 等于symbol(a) ?(不等于)
10、typeof instanceof undefund instanceof undefind(typeof会打印undefined 后面是false)
组件通信 (从小到大)
兄弟:vuex,eventBus;
爷孙 爷provide,孙inject $atrs $listener
父子:props ref $parent $children
nextTick原理
vue dom渲染的异步的,所以在同步代码里写获取更新后的获取不到,因为运行的时候还没有更新,写在nextTick里是获取更新后的新dom内容
6、hash history 为什么选择hash
哈希原理是a标签的#
当路由改变时,对相应的组件进行渲染。实际上还是底层监听了哈希变化,让页面某一部分展示成了你想让它。。展示的部分 【底层是onhashchange事件来监听变化】
histroy是push那种,history.pushState. window.onpopstate这样
浏览器认为它只是前进和后退的一种方式
7、什么时候要用多页面(mpa)
12、flex:0 1 auto(默认值)
(1) flex-grow, flex-shrink 和 flex-basis
1.flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。
2.flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。
3.flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。
(2)设置了flex auto是尽量满足大的元素,设置flex 1 是等量分配
16、切分数组(arr,n) 用slice返回新的、
单页式两种路由方式 :1 地址hash值变化的方法(利用锚点)
(1) a标签
(2) js修改url
(3) 手动修改url onhashchange触发(
(4) 浏览器前进后退
哈希路由本质改变的是锚点,不会向后台发请求。
当路由改变时,对相应的组件进行渲染。实际上还是底层监听了哈希变化,让页面某一部分展示成了你想让它。。展示的部分 【底层是onhashchange事件来监听变化】
2 h5histroy【需要后端配合】还是哈希用的多。两种都不会触发页面刷新
也是用url来规范(没有#号) ,但是不会刷新页面。模式和正常浏览器路径一样的,通常会触发后端的请求~ 但后端可以无论路径是什么返回固定的index.html 就不会产生资源的传输
history.pushState ({name:'index'}, " ", "index" }// /后面加的东西 title 加的路由的name
浏览器认为它只是前进和后退的一种方式
window.onpopState 监听浏览器的前进和后退变化。(传name、 传路径