自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(405)
  • 收藏
  • 关注

原创 2020年PHP面试题附答案(实战经验,建议收藏)

  出于一些原因近期做了一次工作变动,在职交接近一个半月时间大概面试了十五家公司,并且得到了自己比较满意的offer,最后基本上无缝衔接了新工作。总体来说,虽然准备的很充分,但面试期间还是暴露了许多问题,所以做下总结,供大家和自己以后参考,主要分四部分讲述: 简历方面,格式内容包括七个板块,个人简介,求职意向,工作经历,项目经历,技能描述,学历背景,自我评价。如果自己或公司没有其他特殊要求,这些一般就够了,具体格式不再赘述。总结几个要素:1.个人简介名字大写,内容需要详实,一是可以给人留下映像.

2020-07-24 20:34:19 1598

原创 JavaScript高级技巧

1 安全类型检测javascript内置类型检测并不可靠 safari某些版本(<4)typeof正则表达式返回为function建议使用Object.prototype.toString.call()方法检测数据类型 function isArray(value){ return Object.prototype.toString.call(value) === "[object Array]"; } function isFunctio

2021-09-06 21:55:00 287

原创 如何Vue.js中使用第三方库

在诸多 Vue.js 应用中, Lodash, Moment, Axios, Async等都是一些非常有用的 JavaScript 库. 但随着项目越来越复杂, 可能会采取组件化和模块化的方式来组织代码, 还可能要使应用支持不同环境下的服务端渲染. 除非你找到了一个简单而又健壮的方式来引入这些库供不同的组件和模块使用, 不然, 这些第三方库的管理会给你带来一些麻烦.本文将介绍一些在 Vue.js 中使用第三方库的方式.希望能够帮助大家,另外小编谢谢大家一如既往的支持,欢迎大家一起和群里的小伙伴一起学

2021-08-02 21:07:00 822

原创 【静态页面】CSS的显示与溢出

CSS架构显示与溢出;1.显示;display属性;以display设置隐藏效果和元素类型<style> div { width: 200px; height: 200px; } #qq { background-color: blue; } #yy { background-color: red;

2021-07-16 21:36:55 323

原创 【JavaScript】核心语法之数组

数组;一.数组是什么;是值得有序集合,每个元素都在数组里有唯一的位置,用数字表示,叫做索引数据;用字符串表示,叫关联数组。数组无类型;数组元素可以是类型,字符串,数字值,布尔值等数组动态的;向插入新元素,从数组中删除指定元素二.一维数组;1.定义数组;字面量/直接量方式定义 var 数组名称 = [元素一, 元素二, ...] 构造函数方式 var 数组名称 = new Array(元素一, 元素二, ...) var 数组名称 = new Array(length)

2021-07-15 22:30:06 170

原创 【JavaScript】DOM之样式操作

样式操作获取内联样式以节点和元素的方法来获取指定的CSS样式<body><div id="q1" style="width: 200px;height: 200px;border: 1px solid black"></div><script> var div = document.getElementById('q1');// 节点属性获取指定元素的属性 var attrNode = div.getAttribu

2021-07-14 21:26:29 175

原创 JS创建svg的方法

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no"> <meta http-equiv=”X-UA-Com.

2021-07-13 19:11:14 952

原创 我从来不理解JavaScript闭包,直到有人这样向我解释它…

正如标题所述,JavaScript闭包对我来说一直有点神秘,看过很多闭包的文章,在工作使用过闭包,有时甚至在项目中使用闭包,但我确实是这是在使用闭包的知识。最近看国外的一些文章,终于,有人用于一种让我明白方式对闭包进行了解释,我将在本文中尝试使用这种方法来解释闭包。希望能够帮助大家,另外小编谢谢大家一如既往的支持,欢迎大家一起和群里的小伙伴一起学习,交流,群里面每天都有分享初学者的笔记资料,视频。点击进入暗号:知乎程序猿的生活:程序员的出路是什么?​zhuanlan.zhihu.com准备

2021-07-12 20:55:25 123

原创 CSS层叠与继承你知道吗?

CSS 层叠(Cascading)指的是某个元素会根据样式规则的优先级来设置某个元素的外观。层叠样式的优先级主要有三方面:根据样式域判断,是用户代理样式(user agent stylesheet),还是我们自己写的样式;是否存在!important标识; 根据元素样式属性判断,是否是写在元素行内的 style 属性中; 根据选择器判断。用户代理样式是什么?基本上所有浏览器都有默认的样式,例如<h1>-<h6>,<p>标签都有默认的上边距和下边距...

2021-07-10 21:07:09 117

原创 js浮点数加减乘除

/** ** 加法函数,用来得到精确的加法结果 ** 说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。 ** 调用:accAdd(num1,num2) ** 返回值:num1加上num2的精确结果 **/Common.accAdd=function (num1, num2) { var r1, r2, m, c; try { r1 = num1.toString().split(".")[1].le.

2021-07-09 21:09:02 351

原创 CSS实现渐变圆角边框

渐变边框可以使用border-image,但带有圆角的渐变边框单靠border-image却无法实现,那有哪些方法可以实现圆角渐变边框呢?css实用小知识,你肯定用得上方案一:使用border-image+clip-path实现 <style>.radius-gradient-border1{ max-width: 300px; padding: 8px; border: 5px solid transparent; border-image:

2021-07-08 19:06:38 2175 3

原创 React高阶组件

高阶组件(HOC)是React里的高级技术为了应对重用组件的逻辑,HOC本质上不是React API的一部分。他是从React的组合性质中显露出来的模式具体来说,一个高阶组件就是一个获取一个组件并返回一个组件的函数注意:一个HOC不会修改传入的参数组件,也不会使用继承来复制它的行为。不如说,一个HOC通过将原始组件包裹到一个容器组件里来混合。一个HOC是一个没有副作用的纯函数。不要改变原始组件,使用组合在HOC里要打消修改组件原型的想法。点击免费学习更多知识function logProps(

2021-07-06 21:19:08 83

原创 Typescript-泛型

概念TypeScript的泛型与其他面向对象的语言中的定义是相似的。泛型可以理解为在我们定义函数、接口或者类的时候,不预先指定其相关的类型,而是在使用的时候手动指定类型。这和TypeScript基础类型中的any是有区别的。点击免费学习当我们不使用泛型的时候,可能就如下这样: function show(name: string): string { return name; } function show(name: any): any {...

2021-07-06 20:11:48 324

原创 ES6 javascript 实用开发技巧

ES6 实用开发技巧定义变量/常量ES6 中新增加了let和const两个命令,let用于定义变量,const用于定义常量 两个命令与原有的var命令所不同的地方在于,let, const都是块级作用域,其有效范围仅在代码块中,实例如下: //es5 if(1==1){ var b = 'foo'; } console.log(b);//foo //es6 if(1==1){ let b = '...

2021-07-03 19:56:55 130

原创 拒绝JavaScript,这三个CSS技巧你一定用的上​

本文介绍三个非常棒棒的CSS技巧,完全可以在你的项目中代替JavaScript,一起来看看这些技巧吧。程序猿的生活:打造全网web前端全栈资料库(总目录)看完学的更快,掌握的更加牢固,你值得拥有(持续更新)​zhuanlan.zhihu.com:active伪类与CSS数据上报超实用超高频使用的:empty伪类用好:only-child伪类1. :active伪类与CSS数据上报如果想要知道两个按钮的点击率,CSS开发者可以自己动手,无需劳烦JavaScript开发者去埋点:

2021-07-03 14:39:53 162 2

原创 《前端之路》- TypeScript (四) class 中各类属性、方法,抽象类、多态

一、TypeScript 中的类1、先来举个例子: class Persons { name: any; age: number | undefined; constructor(name: string, age: number) { this.name = name; this.age = age; } getName(): void { console.log(`${this....

2021-06-30 21:08:25 185 3

原创 【前端进阶】构建自己的 webpack 知识体系

webpackwebpack 最出色的功能之一就是,除了JavaScript,还可以通过loader引入任何其他类型的文件。Webpack 核心概念:Entry(入口):Webpack 执行构建的第一步将从 Entry 开始,可抽象成输入。 Output(出口):指示 webpack 如何去输出、以及在哪里输出 Module(模块):在 Webpack 里一切皆模块,一个模块对应着一个文件。Webpack 会从配置的 Entry 开始递归找出所有依赖的模块。 Chunk(代码块)...

2021-06-30 21:03:28 117

原创 测试代码质量的唯一方式:别人看你代码时说 “卧槽”的次数

代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。本文并不是代码风格指南,而是关于代码的可读性、复用性、扩展性探讨。我们将从几个方面展开讨论:变量 函数 对象和数据结构 类 SOLID 测试 异步 错误处理 代码风格 注释前端进阶暗号:csdn变量用有意义且常用的单词命名变量Bad:const yyyymmdstr = moment().format('YYYY/MM/DD');Good:const cur..

2021-06-29 15:49:27 192

原创 三大主流框架React、Angular、Vue

【引言】web前端开发当前世界中,技术发展非常迅速并且变化迅速,开发者需要更多的开发工具来解决不同的问题。本文就对于当下主流的前端开发技术React、Vue、Angular这三个框架做个相对详尽的探究。【React】React(也被称为React.js或ReactJS)是一个用于构建用户界面的JavaScript库。它由Facebook和一个由个人开发者和公司组成的社区来维护。React可以作为开发单页或移动应用的基础。然而,React只关注向DOM渲染数据,因此创建React应用通常需

2021-06-27 20:06:34 2461 1

原创 CSS垂直居中的10个方法

前言前端开发中元素居中是最常见和最经常使用到的css技巧,不仅开发中经常会用到,面试官出题考核基础时有时候也会问道这类问题。本文主要介绍10种垂直居中的方法。希望对你我都有帮组。1、line-height+height实现如果子元素是行内文本元素的话,只要设置父元素的height和line-height高度一样就可以垂直居中。HTML "parent"> "child">我是行内元素</span> </div> ...

2021-06-27 18:46:22 238

原创 快毕业了发现自己前端学的不够扎实怎么办

一、基础(重新学一遍比第一次学效率快很多)1、HTML基础笔记:实践建议HTML给你的网页赋予了结构。它就像是人的骨架那样让你保持站立。首先你需要去学习语法以及它必须提供的一切。你的学习应该聚焦在下面这些东西上:学习HTML基础,了解如何编写语义HTML 理解如何把网页分成section(段落),以及如何正确组织DOM(文档对象模型) 现在很多html5的新标签也很有用,需要进行了解实践建议:一旦你学习了HTML基础,至少要制作5个HTML网页。我建议你随便找一个网站,比如看看Git

2021-06-26 21:11:03 508

原创 HTML静态页面之(盒子模型)

盒子模型描述每一个元素都可以叫做是盒子模型 盒子模型的组成 内容区 - 元素中内容(文本、图片、等等) 内边距 - 内容区到边框的距离 边距 - 内容区的边界 外边距 - 盒子与盒子之间的距离 border属性表示设置元素的边框 border属性是简写属性,可以分为 border-width - 表示边框的宽度 border-style - 表示边框的样式 border-color - 表示边框的颜色 简写顺序: 边框宽度 边框样式 边框颜色

2021-06-26 16:38:19 497

原创 js数组JavaScript数组

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>数组操作</title> <link rel="icon" type="text/css" href="images/favicon.ico"></head><body> </body><script>.

2021-06-23 20:57:32 72

原创 用js把数字转化成为大写金额

var digitUppercase = function(n) {var fraction = ['角', '分'];var digit = ['零', '壹', '贰', '叁', '肆','伍', '陆', '柒', '捌', '玖'];var unit = [['元', '万', '亿'],['', '拾', '佰', '仟']];var head ...

2021-06-23 20:44:16 459

原创 html中div使用CSS实现水平/垂直居中的多种方式

CSS中的居中,在工作中,会经常遇到。它可以分为水平居中和垂直居中,以下是几种实现居中的方式。以下例子中,涉及到的CSS属性值。.parent-frame { width: 200px; height: 200px; border: 1px solid red;}.child-frame { width: 100px; height: 100px; border: 1px dotted blue;}1: text-align:c...

2021-06-22 15:17:46 146

原创 TypeScript高级用法

typescript高级用法引言作为一门强大的静态类型检查工具,如今在许多中大型应用程序以及流行的JS库中均能看到TypeScript的身影。JS作为一门弱类型语言,在我们写代码的过程中稍不留神便会修改掉变量的类型,从而导致一些出乎意料的运行时错误。然而TypeScript在编译过程中便能帮我们解决这个难题,不仅在JS中引入了强类型检查,并且编译后的JS代码能够运行在任何浏览器环境,Node环境和任何支持ECMAScript 3(或更高版本)的JS引擎中。最近公司刚好准备使用TypeScript来对现

2021-06-19 13:42:47 293

原创 web前端之TypeScript的类class 中各类属性、方法,抽象类、多态

一、TypeScript 中的类class Persons { name: any; age: number | undefined; constructor(name: string, age: number) { this.name = name; this.age = age; } getName(): void { console.log(`${this.name}今年已经${this.age}岁了`); }} let p11 = new

2021-06-18 19:32:06 330

原创 原生JavaScript实现五子棋(直接上代码干货点赞收藏拿走)

HTML页面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, user-scalable=no"> <title>五子棋</title> &lt

2021-06-15 21:42:02 1155

原创 回顾Java基础知识 你还记得吗

面向对象与面向过程的区别首先面向过程和面向对象的语言没有具体的性能高下之分,要依据每种语言的设计来做参考。个人认为面向过程和面向对象的最大区别在于:面向过程的语言是结构化的,面向对象的语言是模块化的。模块化的代码比结构化的代码更易于维护,复用与扩展。OracleJDK与OpenJDK的区别OpenJDK是基于Sun捐赠的HotSpot的源代码开发的,是开源的。OracleJDK是Oracle对JDK商业化版本,由Oracle发布并维护,因此OracleJDK比OpenJDK更可靠。J...

2021-06-12 14:12:06 1007 1

原创 适合移动和桌面应用的JavaScript框架是什么

当听到JavaScript这个词的时候,“web开发”会一下子出现在我们的脑海中,因为JavaScript在很长一段时间里一直是web应用开发最广泛使用的语言,Angular、React和Vue等框架目前也很有名。尽管JavaScript主导着web开发领域,但是在移动和桌面应用开发领域,它不得不屈居于Java、C#和C++之下。然而,很多人可能没注意到JavaScript对移动和桌面应用开发也产生了影响。本文就将讨论一些主要的JavaScript框架,以及它们在移动和桌面应用开发领域的优缺点。1

2021-06-11 19:32:05 1203 3

原创 JavaScript实现九九乘法表四种方法(附代码)

几行代码就能轻松学会

2021-06-10 14:44:14 4266

原创 基于Nginx的中间件架构(二):代理服务、负载均衡、缓存服务、动静分离

一、代理服务(理解) 代理 - 代为办理(如代理理财、代理收货等等)1.1 代理分类10年架构师领你架构-成长之路-(附面试题(含答案))(腾讯T3-T4)打造互联网PHP架构师教程目录大全,只要你看完,薪资立马提升2倍(持续更新)点击与我交流企鹅群.1.2 HTTP代理正向代理:反向代理:1.3 配置语法反向代理:正向代理:缓冲区:头信息:可以把公用配置文件提取到一个文件,然后引入,如"include

2020-09-29 15:00:38 203

原创 基于Nginx的中间件架构(一):配置语法、Nginx模块、请求限制和访问控制、静态WEB服务

一、I/O介绍和Nginx简介1.1 I/O 类型(理解)同步和异步:关注的是消息通知机制;同步:调用发出之后不会立即返回,但一旦返回,则返回最终结果;异步:调用发出之后,被调用方立即返回消息,但返回的并非最终结果。被调用者通过状态、通知机制等来通知调用者,或通过回调函数来处理结果;阻塞block和非阻塞nonblock:关注的是调用者等待被调用者返回调用结果时的状态。阻塞:调用结果返回之前,调用者会被挂起,调用者只有在得到返回结果之后才能继续。非阻塞:调用者在结果返回之前,不

2020-09-29 14:53:30 383

原创 MySQL性能管理及架构设计(三):SQL查询优化、分库分表 - 完结篇

一、SQL查询优化(重要)1.1 获取有性能问题SQL的三种方式 通过用户反馈获取存在性能问题的SQL; 通过慢查日志获取存在性能问题的SQL; 实时获取存在性能问题的SQL; 1.1.2 慢查日志分析工具相关配置参数:slow_query_log # 启动停止记录慢查日志,慢查询日志默认是没有开启的可以在配置文件中开启(on) slow_query_log_file # 指定慢查日志的存储路径及文件,日志存储和数据从存储应该分开存储 long_query_tim

2020-09-28 14:36:16 137

原创 MySQL性能管理及架构设计(二):数据库结构优化、高可用架构设计、数据库索引优化(收藏一波)

MySQL性能管理及架构设计(一):什么影响了数据库查询速度、什么影响了MySQL性能一、数据库结构优化(非常重要)1.1 数据库结构优化目的1、减少数据冗余:(数据冗余是指在数据库中存在相同的数据,或者某些数据可以由其他数据计算得到),注意,尽量减少不代表完全避免数据冗余;2、尽量避免数据维护中出现更新,插入和删除异常:总结:要避免异常,需要对数据库结构进行范式化设计。3、节约数据存储空间。4、提高查询效率。10年架构师领你架构-成长之路-(附面试题(含答案)).

2020-09-27 16:10:14 103

原创 MySQL性能管理及架构设计(一):什么影响了数据库查询速度、什么影响了MySQL性能(收藏)

一、什么影响了数据库查询速度1.1 影响数据库查询速度的四个因素1.2 风险分析QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 TPS:是TransactionsPerSecond的缩写,也就是事务数/秒。它是软件测试结果的测量单位。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。Tips:最好不要在主库上数据库备份,.

2020-09-27 16:03:38 364

原创 PHP10 个最常见安全问题+案例讲解

相对于其他几种语言来说, PHP 在 web 建站方面有更大的优势,即使是新手,也能很容易搭建一个网站出来。但这种优势也容易带来一些负面影响,因为很多的 PHP 教程没有涉及到安全方面的知识。此帖子分为几部分,每部分会涵盖不同的安全威胁和应对策略。但是,这并不是说你做到这几点以后,就一定能避免你的网站出现任何问题。如果你想提高你的网站安全性的话,你应该继续通过阅读书籍或者文章,来研究如何提高你的网站安全性出于演示需要,代码可能不是很完美。日常开发过程中,很多代码都包含在了框架跟各种库里面。作为一个后

2020-09-26 17:11:05 155

原创 十个PHP开发者最容易犯的错误(一定要记得收藏)

PHP 语言让 WEB 端程序设计变得简单,这也是它能流行起来的原因。但也是因为它的简单,PHP 也慢慢发展成一个相对复杂的语言,层出不穷的框架,各种语言特性和版本差异都时常让搞的我们头大,不得不浪费大量时间去调试。这篇文章列出了十个最容易出错的地方,值得我们去注意。易犯错误 #1: 在foreach循环后留下数组的引用还不清楚 PHP 中foreach遍历的工作原理?如果你在想遍历数组时操作数组中每个元素,在foreach循环中使用引用会十分方便,例如$arr = array(1,...

2020-09-26 14:08:38 104

原创 【PHP】一次group by+order by 性能优化分析

最近通过一个日志表做排行的时候发现特别卡,最后问题得到了解决,梳理一些索引和MySQL执行过程的经验,但是最后还是有5个谜题没解开,希望大家帮忙解答下主要包含如下知识点用数据说话证明慢日志的扫描行数到底是如何统计出来的 从 group by 执行原理找出优化方案 排序的实现细节 gdb 源码调试 10年架构师领你架构-成长之路-(附面试题(含答案)) (腾讯T3-T4)打造互联网PHP架构师教程目录大全,只要你看完,薪资立马提升2倍(持续更新) 点击与我交流企鹅群. 背景

2020-09-25 17:12:13 257

原创 PHP进阶之路 - 深入理解FastCGI协议以及在PHP中的实现

传统 CGI 工作原理分析客户端访问某个 URL 地址之后,通过 GET/POST/PUT 等方式提交数据,并通过 HTTP 协议向 Web 服务器发出请求,服务器端的 HTTP Daemon(守护进程)将 HTTP 请求里描述的信息通过标准输入 stdin 和环境变量(environment variable)传递给主页指定的 CGI 程序,并启动此应用程序进行处理(包括对数据库的处理),处理结果通过标准输出 stdout 返回给 HTTP Daemon 守护进程,再由 HTTP Daemon 进程通

2020-09-25 14:06:55 103

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除