前端基础知识8

2023-10-30

  • 如果一个数组都是整数,需要把小于10的数去除,保留比10大的数应该怎么做?
1.利用数组的过滤方法
let arr = [1,2,3,40,70,30,5,90]
let arrFilter = arr.filter((item)=>{
return item >= 10
})

2.循环遍历
var arr1 = [1, 3, 10, 2, 20];
        var result = [];
        for (var i = 0; i < arr1.length; i++) {
            if (arr1[i] >= 10) {
                result.push(arr1[i]);
            }
        }
        
  • 闭包的概念 
就是能够读取外层函数内部变量的函数。
闭包需要满足三个条件: 1访问所在作用域; 2函数嵌套; 3在所在作用域外被调用。
优点: 可以重复使用变量,并且不会造成变量污染。
缺点: 会引起内存泄漏
使用闭包的注意点: 由于闭包会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。  
  • 常见的http状态码 
100 —— 客户必须继续发出请求
101 —— 客户要求服务器根据请求转换 HTTP 协议版本
200 —— 交易成功
201 —— 提示知道新文件的 URL
202 —— 接受和处理、但处理未完成
203 —— 返回信息不确定或不完整
204 —— 请求收到,但返回信息为空
205 —— 服务器完成了请求,用户代理必须复位当前已经浏览过的文件
206 —— 服务器已经完成了部分用户的 GET 请求
300 —— 请求的资源可在多处得到
301 —— 删除请求数据
302 —— 在其他地址发现了请求数据
303 —— 建议客户访问其他 URL 或访问方式
304 —— 客户端已经执行了 GET ,但文件未变化
305 —— 请求的资源必须从服务器指定的地址得到
306 —— 前一版本 HTTP 中使用的代码,现行版本中不再使用
307 —— 申明请求的资源临时性删除
400 —— 错误请求,如语法错误
401 —— 请求授权失败
402 —— 保留有效 ChargeTo 头响应
403 —— 请求不允许
404 —— 没有发现文件、查询或 URl
405 —— 用户在 Request-Line 字段定义的方法不允许
406 —— 根据用户发送的 Accept 拖,请求资源不可访问
407 —— 类似 401 ,用户必须首先在代理服务器上得到授权   
  • post和get方法的区别 
GET 一般用于获取/查询资源信息,而 POST 一般用于更新资源信息。
GET POST 的区别: GET提交的数据会放在 ? 之后,以问号(?)分割 URL 和传输数据,参数之间以&相连 GET提交的数据大小有限制(因为浏览器对 URL 的长度有限制), 而 POST 方法提交的数据大小没有限制。
GET 方式提交数据会带来安全问题,比如一个登录页面通过 GET 方式提交数据时,用户名和密码将出现在URL 上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码。
  • js中如何书写一个类 

构造函数方法,原型方法,工厂方法,单例模式 

  • 输入URL到打开页面都做了些什么 
输入 URL
访问 hosts 解析,如果没有解析访问 DNS 解析
TCP 握手
HTTP 请求
HTTP 响应返回数据
浏览器解析并渲染页面
  • for each 和 map 的区别 
forEach map 都是循环遍历数组中的每一项。 forEach() map() 里面每一次执行匿名函数都支持 3 个参数:数组中的当前项item, 当前项的索引 index, 原始数组 input 。匿名函数中的 this 都是指 Window 。只能遍历数组。
他们的区别是: forEach 没有返回值,但 map 中要有返回值,返回处理后的所有新元素组成的数组。
  •  for in 的使用场景

for in索引遍历,主要用于循环/迭代对象属性,可以用来循环/迭代数组 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

前端基础知识8 的相关文章