JavaScript面试常问点(一)

前端面试官常问的问题 标准回答: Promise的作用:Promise是异步微任务,解决了异步的问题,让代码的可读性更高,更容易维护 Promise使用:Promise是ES6提供的一个构造函数,可以使用Promise构造函数new一个实例,Promise构造函数接收一个函数作为参数,这个函数有两个参数,分别是两个函数 和 将Promise的状态由等待变为成功,将异步操作的结果作为参数传递过去; 则将状态由等待转变为失败,在异步操作失败时调用,将异步操作报出的错误作为参数传递过去。 实例创建完成后,可以使用方法分别指定成功或失败 阅读详情

js暂时性死区

在ES6中新增的定义变量的关键字let和const,会带来一个暂时性死区的问题,暂时性死区简单来讲就是变量未定义就调用了。在ES6中let和const定义变量是没有变量提升这一功能的。所以才会造成暂时性死区这个问题。

在ES5中定义变量的关键字var会将变量名称全部提升到代码最前面将变量名进行行定义,再进行赋值。

// 相当于将一行定义变量的代码分成了两行执行

var a = 1;
    ↓
var a; // 在js的最顶部
a = 1;

let和const的区别

let是定义变量的,而const是定义常量的。

cosnt定义的常量如果是基本类型,值是不可以改变的。如果定义的是引用类型,那么引用类型中的值是看以改变的,只要堆地址不改变就行。

那么这里又涉及到了堆和栈。堆和栈其实只是内存存储数据的一个地方。

堆:一般用来存储引用数据类型的值。

栈:一般用来存储基本数据类型的变量名和值,引用类型的变量名和堆地址。

所以说const定义的常量的值是存在堆中的,而改变存储的值是可以的,但是栈中存储的堆地址却不会改变

bom包含哪些对象

navigator 包含有关浏览器的信息

localtion Location 对象包含有关当前 URL 的信息。

screen Screen 对象包含有关客户端显示屏幕的信息。

history History 对象包含用户(在浏览器窗口中)访问过的 URL。

window Window 对象表示浏览器中打开的窗口。

数组方法

concat 链接两个数组,返回值是合并后的数组,该方法不改变原数组

indexOf 检索数组中的某个值,如果这个值存在则返回这个值的索引,如果不存在的返回-1

lastIndexOf 从尾部检索数组中的某个值,如果这个值存在返回这个值的索引,不存在则返回-1

every 判断数组中的每一项是否符合条件,如果符合条件则返回true,否则返回false

some 判断数组中是否有符合条件的项,如果有则返回true,若没有则返回false

join 将数组中的每一项通过一个字符进行链接成一个字符串

pop 删除数组的最后一个元素,并返回该元素,此方法会改变原来的数组

shift 删除数组的第一个元素,并返回该元素,此方法会改变原来的数组

push 在数组的尾部添加一个元素,或多个元素,并返回新数组的长度,该方法会改变原数组

sort 数组排序,通过传入一个回调函数进行数组排序,此方法会修改原数组

reverse 反转数组,将数组进行颠倒过来,此方法会改变原数组

slice 截取数组,传入两个参数一个是起始位置一个是结束位置,此方法不改变原数组,返回值是截取的数组

unshift 在数组的头部添加一个或多个元素,并返回新数组的长度,该方法会改变原数组

splice 截取数组,传入两个参数第一个是起始位置,第二个是数量,返回值是截取的数组,此方法改变原数组

split 将字符串根据某个特定的字符转化成数组。

forEach 遍历数组,将数组循环一遍。

map 映射数组,传入一个回调函数,并写入生成条件,生成对应条件的新数组,并返回这个新数组,此方法不改变原数组

filter 过滤数组,传入一个回调函数,写入筛选条件,返回一个满足条件的数组,此方法不改变原数组

reduce 迭代将数组中的每一项合并,最终计算出一个总值,返回出去

findIndex 查找某个元素的索引

flat 将多维数组转成一维数组。参数可以为数字,可以不传,同样也可以传为Infinity表示不管多少层嵌套均可转化成一维数组

flatMap 对原数组的每一个成员执行一个函数并返回一个新数组并且函数的执行结果均会跟在每一个成员后面

fill 使用制定的元素填充数组,其实就是用默认内容初始化数组。

Includes 函数判断是否包含某一元素,不能定位,它直接返回true或者false表示是否包含元素,对NaN一样能有有效。

静态方法

Array.isArray 判断是否是一个数组,是则返回true,否则返回false

Array.from 将一个类数组对象或者可遍历对象转换成一个真正的数组。

Array.of 将一系列值转换成一个数组

对象方法

Object.is 判断是否全等

Object.assign 浅复制

Object.keys 方法会返回一个由一个给定对象的自身可枚举属性名组成的数组。

Object.values 方法会返回一个由一个给定对象的自身可枚举属性的值组成的数组。

Object.entries 方法会返回一个由一个给定对象的自身可枚举的键值对组成的二维数组。

数值的扩展

Number.parseInt 将parseInt方法添加到了Number对象上,调用方式不变

Number.parseFloat 同上

Number.isNaN 同上

Number.isInteger 判断一个数是不是一个整数

Math.sign 判断一个数的正负 正数返回1负数返回-1

Math.trunc() 取整

Math.cbrt 开立方根

Math.sqrt 开平方根

字符串的扩展

${} 模板字符串

Includes 返回布尔值,表示是否找到了参数字符串。

startsWith 返回布尔值,表示参数字符串是否在原字符串的头部。

endsWith 返回布尔值,表示参数字符串是否在原字符串的尾部。

Repeat 参数值为介于0和正无穷大之间的整数 : [0, +∞) 。表示在新构造的字符串中重复了多少遍原字符串。

扩展运算符/…运算符

数组和对象

可以复制对象和数组

合并对象和数组

解构对象和数组

数组

将类数组转成真数组

将字符串转为字符数组

对象

将数组转换成对象

对象转成数组: Array.keys() Array.from转换

对象转数组必须每一项的键都是数字,并且必须是连续的,必须有length属性

新增数据结构

Set:

概念:

似于数组,但它的一大特性就是所有元素都是唯一的,没有重复。
我们可以利用这一唯一特性进行数组的去重工作。

数组去重实例:

let set6 = new Set([1, 2, 2, 3, 4, 3, 5])
console.log('distinct 1:', set6)

添加元素:

	Set.add(val)

删除元素:

	Set.delete(val)

判断元素是否存在:

	Set.has(val)

清除所有元素:

	Set.clear()

数组转set:

	New Set(arr);

Set转数组:

	[…Set]

可以使用Set实例对象的keys(),values(),entries()方法进行遍历。

Set的键名和键值是同一个值,它的每一个元素的key和value是相同的,所有keys()和values()的返回值是相同的,entries()返回的元素中的key和value是相同的。

在向Set加入值时,Set不会转换数据类型,内部在判断元素是否存在时用的类似于精确等于(===)的方法,“2”和2是不同的,NaN等于其自身。

WeakSet:

概念:

WeakSet和Set类似,同样是元素不重复的集合,它们的区别是WeakSet内的元素必须是对象,不能是其它类型。

特点:

1.元素必须是对象。

2.弱引用,不被计入垃圾回收

添加进WeakSet的元素对象,WeakSet不会对元素对像的引用计数加1,对于被添加进WeakSet的元素对象,只要该元素对象没有被除WeakSet以外的其他对象引用,就会被垃圾回收释放,在WeakSet中的该元素对象自动被释放,不会出现内存泄漏。

因为这一特性,其性能要比map要高,对于存储无顺序要求的,不重复的,临时存储的场景,可以使用它。

例子:

const ws = new WeakSet()
var a = {p1:'1', p2:'2'}

ws.add(a)
a = null
console.log(ws.has(a));

先将对象添加到WeakSet中,然后将对象设成null,然后再下面的has方法判定时,结果显示,表示WeakSet中已经不存在该对象。

3.不能遍历

因为其对内部的元素对象是弱引用,随时会被垃圾回收释放掉,所以其不支持size和forEach等遍历方法。

Map:

概念:

Javascript的Object本身就是键值对的数据结构,但实际上属性和值构成的是”字符串-值“对,属性只能是字符串,如果传个对象字面量作为属性名,那么会默认把对象转换成字符串,结果这个属性名就变成"[object Object]"。

ES6提供了"值-值"对的数据结构,键名不仅可以是字符串,也可以是对象。它是一个更完善的Hash结构。

使用:

设置值:

Map.set(key,val)

获取值:

Map.get(key)

获取map的大小:

Map.size

判断是否存在:

Map.has(key)

删除键值对:

Map.delete(key)

清空map对象:

Map.clear()

Map也可以对set进行链式调用,同样可以使用for of 循环,也可以使用object的keys,values,entries的方法,forEach遍历同样可以使用

Symbol:

Symbol,是一种数据类型。在定义时直接调用即可。

例如:

	Var sy = Symbol();

唯一性,通常用作对象的键,永不重复。

深拷贝与浅拷贝

浅复制

object.assign({},obj)

把一个对象克隆一份给另一个对象,只能把元对象的基本数据类型克隆一份,引用类型克隆不了,

也就是说克隆后的对象改变了引用类型的数值,同时也会改变原对象的属性值

深拷贝

原对象的属性值无论是基本类型还是引用类型都是复制给新对象的,任何属性值之间不存在引用关系,也就是复制后的对象改变其中任何一个属性值都不会影响原对象

JSON.parse(JSON.stringify())配合使用

…复制对象

…也可以展开对象

let obj2 = {...obj}

数组合并

Object.assign({},obj1,obj2)

或者是

let obj = {…obj1,…obj2}

解构对象

    let obj = {x:1,y:1,z:3}
    let {x,y,...z}=obj

数组转对象

    let obj = {...[1,2,3,5,9,8]}

数组的每一个下标作为对象的建,

数组的每一个值作为对象的值

异步函数

概念

也叫async函数,解决异步嵌套的问题,异步函数是生成器函数的高级语法糖,也就是生成器函数的高级封装,比生成器函数更好用,一般使用异步函数配合Promise是最佳的消除异步嵌套的方案
语法:

在函数声明的时候添加一个async关键字,表明该函数是异步函数

async关键字是添加在function关键字前面

特性:

1.异步函数调用函数名,会立即执行函数的函数体

2.异步函数默认返回一个异步函数

    如果想要获取return后面的值需要通过返回值`.then(result=>{
    })`
    或者通过过`Promise.resolve`取值
    
    Promise.resolve(返回值).then( result =>{
    })
    
    不能通过返回值['[[PromiseValue]]']取值,这样取出来的值是undefined

3.async经常配合await关键字使用

await是个关键字 只能和异步函数配合使用
也就是await只能出现在异步函数中,否则会报错
await 表示 等待的意思
await 后面可以跟一个具体的数值或一个Promise实例或一个异步函数
异步函数里面的代码会按照同步的方式执行

闭包

ES5闭包:

两个函数嵌套,内(子)函数使用了,外(父)函数的变量或者参数,导致这个变量或者函数参数被保留了袭来,延长了变量或函数参数的使用周期,从而导致这个变量或者函数或者参数被内(子)函数去使用

ES6闭包:

两个作用域嵌套,内(子)作用域使用了,外(父)作用域的变量或者参数,导致这个变量或者参数被保留了袭来,延长了变量或参数的使用周期,从而导致这个变量或者参数被内(子)作用域去使用

ESP32-C3芯片通过蓝牙控制开锁功能 定义BLE服务和特征,用于接收开锁命令。0x00FF// 服务UUID0xFF01// 特征UUID4// 句柄数量// 特征值// 特征属性// 处理GATT服务器事件// 处理事件(详细代码见下文)// 注册GATT回调if (ret) {return;// 创建GATT服务器。 阅读详情

相关推荐

PMSM单电阻采样避坑指南:如何解决非观测区电流重构难题(附ST专利分析)

本文深入解析了PMSM单电阻采样技术中的非观测区电流重构难题,并详细介绍了ST专利方案及移相法的工程实践。通过优化PWM调制策略和系统级调试方法,有效解决了相电流检测精度问题,为电机控制领域的工程师提供了实用的技术指南。

weixin_33737774的博客 631

JavaScript endsWith() 方法

JavaScript endsWith() 方法用来判断当前字符串是否是以指定的子字符串结尾的(区分大小写)。如果传入的子字符串在搜索字符串的末尾则返回 true,否则将返回 false。本文章通过语法和示例解释了如何使用称为endsWith()方法。

wuxiaopengnihao1的博客 1万+

速腾16线激光雷达(RS-16)在ubuntu18.04系统下跑SC-A-LOAM算法

说明: 简要记录一下速腾16线激光雷达即RS-16在ubuntu18.04系统下跑SC-A-LOAM算法的过程,因为SC-A-LOAM算法源码不支持RS雷达的数据,大致思想就是先将rs雷达发布的激光数据转换为velodyne类型的数据,考虑到接下来还要基于RS-16实时运行SC-A-LOAM算法,这里提前将RS_SDK驱动安装好。 1 搭建SC-A-LOAM算法运行环境 首先需要在电脑上搭建SC-A-LOAM算法的运行环境,见文章《ubuntu18.04搭建SC-A-LOAM环境并运行》 本文所使用的系统架

超爱吃小蛋糕的66的博客 2373

js 方法使用endsWith()

endsWith()方法

weixin_39917260的博客 4091

电磁波成像技术全解析:从γ射线到无线电波的应用实践

本文全面解析电磁波成像技术,从γ射线到无线电波的应用实践。详细介绍了不同波长电磁波的特性与实用场景,包括医疗影像、工业检测、安防监控等领域。特别探讨了X射线、红外热成像、毫米波雷达等前沿技术的实战应用,为读者提供技术选型指南和操作技巧。

weixin_29305337的博客 293

SAP GUI 经典事务在 Fiori Launchpad 中的穿越之道:原理、配置与实践指南

在许多企业的 S/4HANA 或 ECC 系统里,经典 SAP GUI 事务依旧承载着关键业务。如何把这些老将自然地嵌入到 Fiori Launchpad,让用户在统一入口里无缝切换新旧 UI,是项目中经常遇到的主题。本文结合社区博文、官方文档与实际项目经验,系统梳理这一过程的技术原理、配置步骤、性能优化以及常见坑点,并给出贴近中国读者的案例解析与改进建议。阅读完毕,你将不仅知道怎么做,还会理解。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 623

JavaScript中的endsWith

如何在JavaScript中检查字符串是否以特定字符结尾? 示例:我有一个字符串 var str = "mystring#"; 我想知道该字符串是否以#结尾。 我该如何检查?

asdfgh0077的博客 4431

DeepSeek 赋能太空探索:从轨道优化到星际开拓的 AI 革命

随着人工智能技术蓬勃发展,DeepSeek 在太空探索领域展现出巨大应用潜力。本文深入剖析 DeepSeek 技术核心,包括低功耗运算、开源生态等优势,阐述其与传统航天技术的差异。从航天器自主控制、深空探测、载人航天等关键环节,结合实时轨道调整、故障诊断修复等实例,揭示 DeepSeek 对航天任务效率与安全性的提升作用。同时探讨其应用面临的太空环境适应、伦理安全等挑战,展望技术演进方向及与前沿技术融合前景,展现 DeepSeek 为人类太空探索带来的变革与深远意义。

邓邓子的博客 2256

js实现endwith方法

js实现endwith方法 <script> String.prototype.endWith = function (endStr) { var d = this.length - endStr.length; return (d >= 0 && this.lastIndexOf(endStr) == d) } // 调用 var test = 'test.html'; console.log(test.endwith('.html'))

cute_boy_的博客 4492

运维颠覆!一文解锁AI赋能运维实战秘籍,效率飙升!

将AI应用于运维工作是一场极具价值的变革,从故障预测与诊断到自动化任务执行,再到资源管理优化,AI都展现出巨大潜力。尽管在实践过程中会面临数据质量、模型复杂性等挑战,但通过合理的技术选型和解决方案,我们能够充分挖掘AI的优势,实现运维工作的高效、智能转型。持续探索和创新AI在运维领域的应用,将为企业的数字化发展提供坚实保障。在科技飞速发展的当下,运维领域正经历着深刻变革,AI的融入成为提升运维效率与质量的关键。本文将深入实战,带你领略AI如何在运维各环节大显身手,让你的运维工作开启智能高效新模式。

探索云原生与智能化驱动下的安全运维新范式。关注DevSecOps、可观测性、AIOps等前沿领域,与您共赴技术前沿。 401

【华为OD机试】2024年真题C卷(python)-API集群负载统计

【华为OD机试】-API集群负载统计-【华为OD机试】-API集群负载统计:某个产品的 restful API 集合部署在服务器集群的多个节点上,近期对客户端访问日志进行了采集,需要统计各个API的访问频次,根据热点信息在服务器节点之间做负载均衡,现在需要实现热点信息统计查询功能。 restful API 是由多个层级构成,层级之间使用/连接,如 A/B/C/D 这个地址,A属于第一级,B属于第二级,C属于第三级,D属于第四级。 现在负载均衡模块需要知道给定层级上某个名字出现的频次,未出现过用0

u014481728的博客 1491

js ES6判断字符串是否以某个字符串开头或者结尾startsWith、endsWith

startsWith:startsWith方法用于检查字符串是否以指定的字符串开头。endsWith:endsWith方法用于检查字符串是否以指定的字符串结尾。总结:startsWith和endsWith方法是在JavaScript中用于检查字符串开头和结尾的便捷方法,能够提高字符串处理的效率和可靠性。注意事项:在使用startsWith和endsWith方法时要注意区分大小写,避免出现意外的匹配结果。另外,需要注意处理特殊字符和空字符串的情况。

misschengispink的博客 2922

小梅哥Xilinx FPGA学习笔记11——亚稳态

亚稳态就是D触发器输入信号在其数据窗口期内发生变化,导致D触发器的输出进入一段时间的不稳定状态,有可能发生振荡,并最终随机稳定在高电平或者低电平。

m0_51430584的博客 631

面试官常问的 web前端 问题(一)

面试官常问的 web前端 问题 1-101. 标签上 alt与 title属性的区别是什么?2. DIV+CSS 布局较 table 有什么优势?3. 介绍一下标准的 CSS 的盒子模型?与低版本 IE 的盒子模型有什么不同的?4. CSS 选择符有哪些?5. JS 的数据类型有哪些?6. null,undefined 的区别?7. 描述下 JSON 对象的两个很重要的方法8. eval 是做什么...

qq_44641053的博客 2万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

JavaScript 常问面试题

本内容为JS高频率面试题,祝大家找到好的工作。

qq_50787990的博客 865

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Next.js面试常问内容详解

Next.js 的混合渲染能力如同一把精密的多功能工具刀。理解 SSR、SSG、ISR 的底层差异(如 SSR 的 ReactDOMServer.renderToString() 流程 或 ISR 的增量更新机制),才能根据业务场景灵活组合。本文将深入解析服务端渲染(SSR)、静态站点生成(SSG)和增量静态再生(ISR)的核心原理与实战应用,帮助开发者构建高性能应用。◦ Pages Router:传统路由,文件路径即路由(如 pages/about.js → /about)。

警警的博客 1328

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

10 个常问的 JS 面试题

1.如何理解 JS 中的this关键字? JS 初学者总是对 this 关键字感到困惑,因为与其他现代编程语言相比,JS 中的这this关键字有点棘手。 “this” 一般是表示当前所在的对象,但是事情并没有像它应该的那样发生。JS中的this关键字由函数的调用者决定,谁调用就this就指向哪个。如果找不到调用者,this将指向windows对象。 来几个粟子 第一个例子很简单。 调用 test对...

weixin_43748615的博客 684

js面试常问问题含详细答案

总结一些前端js的知识,将笔记整理跟大家分享,有些知识会经常在前端面试的时候会问到,所以做个记录,希望对大家有所帮助,如果有什么问题,可以指出,会积极修正。 如果大家喜欢,可以点赞或留言我再继续更新面试题~~~~,谢谢大家~~~ 1、前++、后++、区别? var i=2 ; a = i++ //将i的值赋给a , 即a = i,之后再执行i = i + 1; 2 a = ++i //将i+1 的值赋给a,即a = i + 1 ,之后再执行i = i + 1; 3 console.log(a) 复制

开源世界 3707

JavaScript面试常问

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录JavaScript面试常问;一、JavaScript数据类型二、var|let|const的相同点和区别;1.var;2.let 声明的变量特点:3.const:总结promiseCSSCSS JavaScript面试常问; 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可

weixin_55839319的博客 340

面试常问的js里map和set的区别

一、Set的简介Set类似于数组,但是它里面每一项的值是唯一的,没有重复的值,Set是一个构造函数,用来生成set的数据结构let s = new Set(); let arr = [2, 3, 5, 4, 5, 2, 2]; arr .forEach(item => arr.add(item)); //向set添加重复的值for (let i of s) { console.log(i...

weixin_34253539的博客 1913

常问面试问题

JavaScript中的对象是引用类型的数据,当多个实例引用同一个对象时,只要一个实例对这个对象进行操作,其他实例中的数据也会发生变化。而在Vue中,我们更多的是想要复用组件,那就需要每个组件都有自己的数据,这样组件之间才不会相互干扰。所以组件的数据不能写成对象的形式,而是要写成函数的形式。数据以函数返回值的形式定义,这样当我们每次复用组件的时候,就会返回一个新的data,也就是说每个组件都有自己的私有数据空间,它们各自维护自己的数据,不会干扰其他组件的正常运行。

阿宝的博客 1060

100个最常问的JavaScript面试问答-第4部分(共10部分)

100个最常问的JavaScript面试问答-第4部分问题31.参数对象可用于ES6 arrow functions吗?问题32.如何在没有原型的情况下创建对象?问题33. JavaScript中变量的作用域是什么?问题34. JavaScript中this的作用域是什么?问题35.JavaScript中的Callback是什么?问题36.typeOf运算符如何工作?问题37.解释JavaScript中的相等性问题38.`==`和`===`之间有什么区别?问题39.什么是ECMAScript?问题40.ES

努力是为了站在万人之中,成为别人的光 7120

JavaScript面试

JavaScript 面试不容易。我觉得难,你也觉得不容易,大家的意见不谋而合。在 JavaScript 面试中被问问题的概率通常很高。那么该如何破解 JS 面试?突破口在哪儿?本文旨在通过学习基本概念来指导所有有志向的 JavaScript 开发者加深他们的 JS 知识。 以下为译文: 应对 JS 面试,本文至少算是必备常识。如果我是候选人,我会争取很好地掌握这些概念。如果我是面试...

weixin_40802058的博客 1309

Vuex 深度解析 | 面试常问问题案例

Vuex 深度解析 | 面试常问问题案例

我是 二川兄,对Web开发、GIS开发、3D模型、机器学习、面试技巧等方面都有一些涉猎~ 欢迎您加入技术交流圈!你可以在我的文章末尾找到我~ 3637

100个最常问的JavaScript面试问答-第1部分(共10部分)

100个最常问的JavaScript面试问答-第1部分问题1.什么是JavaScript?问题2.JavaScript中有哪些基本类型?或者解释JavaScript中各种数据类型?问题3.undefined和null在JavaScript中有什么区别?问题4. JavaScript中的转义字符是什么?问题5.什么是Logical AND (&&)逻辑与?问题6.什么是Logical OR (||)逻辑或?问题7.将字符串转换为数字的最快方法是什么?问题8. JavaScript中的Erro.

努力是为了站在万人之中,成为别人的光 4091

web、keepalived、lvs、nginx 面试常问解析

web、keepalived、lvs、nginx 面试常问解析 1.nginx代码状态代表啥意思 --(工作可以快熟定位故障) 200:服务器正常响应 301:资源永久重定向 302:资源临时重定向 403:访问请求被禁止 404:服务器找不到客户端请求的资源 500:服务器内部错误 502:代理服务器从后端收到了一条伪响应;bad gateway 2.维护网站过程中遇到的问题 1.今天上传了图...

三思博客 823
上一篇: Vue常见面试题
下一篇: JavaScript面试常问点(二)
ZemanZhang
博客等级 码龄9年 1188粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZemanZhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值