0
点赞
收藏
分享

微信扫一扫

单词词义、词性、例句查询python代码

飞进科技 2023-05-09 阅读 72
csshtmlcss3

1.盒子水平垂直居中方法(常见)

  • 利用绝对定位,先将元素的左上角通过top:50%和left:50%定位到页面的中心,然后再通过translate来调整元素的中心点到页面的中心。
.fu{
  position:relitive;
}
.zi{
  position:absolute;
  top:50%;
  left:50%;
  transfrom:translate(-50%,-50%);
}
  • 使用flex布局,通过align-items:center和justify-content:center设置容器的垂直和水平方向上为居中对齐,然后它的子元素也可以实现垂直和水平的居中。
display: flex;
justify-content: center;//内容水平居中
align-items: center;//垂直居中

2.数组去重

  • es6  new Set( )方法
var arr = [1,1,1,2,2,2,3,4,5,5,6,6,7,7,7,8]
console.log(Array.from(new Set(arr)))
console.log([...new Set(arr)])
  • indexOf()
var arr = [1,1,1,1,1,2,2,2,22,33,3,3,33,3,3,7,8,8,8,9]
var newArr= []
arr.filter((item)=>{
   if(newArr.indexOf(item) === -1){
        newArr.push(v)
 }
})

console.log(newArr);

 3.垃圾回收机制

  • 标记清除
  • 引用计数

4.let const var的区别

#变量提升重复声明修改值块级作用域
let不可以可以
const不可以不可以,里面的东西可以改
var有undefined可以可以没有

5.双向数据绑定原理及实现

通过object.defineProperty劫持数据发生改变如果数据发生改变(在set中进行赋值),触发update方法进行页面数据节点更新,从而实现数据双向绑定。

6.数据类型有哪些以及检测

  • 数据类型:

基本数据类型:string,number,NAN, undefined, Null, Boolean,symbol

复杂数据类型:function, object, Array,date

  • 检测:
  1. typeof——基本数据类型检测
  2. instanceof——复杂数据类型检测
  3. constructor——基本、复杂类型都可以检测
  4. object.prototype.toString.call()

7.防抖与节流

  • 防抖:操作时不执行,确定不操作了才执行
function debounce(fun,delay){
    let timer = null;
    return function(){
        if(timer) clearTimeout(timer)
        let args = arguments
        timer = setTimeout(() => {
            fun.apply(this,args)
        },delay)
    }
    
}
  • 节流:到了时间必须执行一次
funtion throttle(fun,time){
    let start = 0;
    return function(){
        let now = new Date()
        if(now - start > time){
            fun.apply(this,arguments)
            start = now
        }
        
    }
}

8.Diff算法

虚拟dom:把dom转为数据

9.事件循环机制

执行顺序:同步任务——异步任务(微任务——红任务)

10.原型和原型链

11.深拷贝,浅拷贝

  • 浅拷贝:b复制a,修改b时a也变了就是浅拷贝(只拷贝一层)
  • 深拷贝:b复制a,   修改b时a没变就是深拷贝(层层拷贝)

12.ajax,promise,axios,fetch区别

  1. ajax:全名XMLHttpRequest(XHR),局部刷新页面数据
  2. promise:解决异步回调嵌套
  3. axios: 封装ajax的库的其中一种
  4. fetch:ajax的替代品

13.路由有几种模式

两种:hash     history

hash: 地址栏上有#,用window.localtion.hash读取

history: h5新增路由,需要后台的配合

14.get与post区别

#传输及安安全性大小缓存后退有无影响
get不安全(明文传输)体积小有缓存后退没有影响
post安全体积大无缓冲后退重新提交

15.前端优化

  • 请求数据阶段主要指标是服务器响应时间,从服务器角度优化。
  • 加载和解析页面阶段,性能优化的主要思路是减少请求数量、降低资源的大小和避免阻塞。
  • 渲染阶段优化思路是避免重绘和重排

16.数组的排序方式

  • 冒泡排序
  • 选择排序

17.输入 url 到打开页面 都做了什么事情 ?

  • 输入URL
  • 访问hosts解析,如果没有解析访问DNS解析
  • TCP握手
  • HTTP请求
  • HTTP响应返回数据
  • 浏览器解析并渲染页面

18.继承

19.什么是promise

Promise 是异步编程的一种解决方案:从语法上讲,promise是一个对象,从它可以获取异步操作的消息;

promise有三种状态: pending(等待态),fulfilled(成功态),rejected(失败态);状态一旦改变,就不会再变。创造promise实例后,它会立即执行

promise是用来解决两个问题的:

回调地狱,代码难以维护, 常常第一个的函数的输出是第二个函数的输入这种现象

promise可以支持多个并发的请求,获取并发请求中的数据

let myPromise = new Promise(function(myResolve, myReject) {
// "Producing Code"(可能需要一些时间)
  myResolve(1); // 成功时
  myReject();  // 出错时
}).then(res => {
  console.log(res);//1
}).catch(res => {
 console.log(res);
}) ;

20.普通函数与箭头函数的区别 ?

1.箭头函数没有prototype(原型),箭头函数没有自己的this,继承的是外层代码块的this。

2.不可以当做构造函数,也就是说不可以使用new命令,否则会报错的。

3.不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用 rest 参数代替。

4.不可以使用yield命令,因此箭头函数不能用作 Generator(生成器) 函数。

5.因为没有this,所以不能使用call、bind、apply来改变this的指向。


21.git 的常用指令有哪些 ?

git branch 分支查看

git branch branch_1 增加分支

git checkout branch 分支切换

git merge branch_1 合并分支(合并前要切换当前分支至master)

git branch -d branch_1 删除分支

git remote 查看当前仓库管理的远程仓库信息

git remote show origin 查看指定的远程仓库的详细信息

git push --set-upstream origin branch_1 第一次将本地分支推到远程仓库

git push <远程主机名> <本地分支名>:<远程分支名> 将本地分支推到远程分支

git pull <远程主机名> <远程分支>:<本地分支> 将远程分支拉到本地分支

git branch -d branch_0 删除本地合并后分支

git brench -D branch_0 删除本地未合并分支

git push origin --delete branch_0 删除远程分支

git tag 查看标签

git tag v1.0.0 打标签

git push origin v1.0.0 将tag同步到远程服务器

22.for in 和 for of 循环的区别 ?

for in ——key

for of ——value

23.常见的状态码

200 成功

400客户端错误

500服务器错误

24.token 一般存放在哪里 ? 为什么不存放在 cookie 内 ?

token一般放在本地存储中。token的存在本身只关心请求的安全性,而不关心token本身的安全,因为token是服务器端生成的,可以理解为一种加密技术。但如果存在cookie内的话,浏览器的请求默认会自动在请求头中携带cookie,所以容易受到csrf攻击。

25.浏览器的同源策略以及解决跨域的方式

同源策略:协议、域名、端口均相同,不相同则为跨域

跨域解决:jsonp、cors、代理、反向代理、proxy

26. 数组方法 forEach 和 map 的区别 ?

27. 你了解构造函数吗 ? class 是什么 ? 两者有什么区别 ?

28.

举报

相关推荐

0 条评论