一个web全栈的修行者
文章平均质量分 72
这是一个全栈修行者的web之路,主要以项目开发为切入点,来写一个web项目从无到有的前端、后台、服务器环境、数据库搭建等各个方面的理论和实战经验。如果你也喜欢web,并且想有独立开发web的能力,那和我一起修炼web全栈吧!
angelavor
本人就读于西北工业大学软件工程专业
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PHP语法基础(与Java、C++等作比较)
PHP的语法规则特点: 1、无需声明变量,但对于类需要先声明后使用。 2、PHP为弱数据类型的语言,定义和使用变量时只需在变量前加上“$”符号即可,另外类中变量的声明需要用到“var”(跟JavaScript相像)。 3、变量的作用域和其他语言都差不多,分为全局、局部、静态、参数,有一点不同的是在函数内部 使用全局变量的时候需要使用关键词 global 。 4、常量的意义和作用原创 2017-07-20 19:07:00 · 898 阅读 · 0 评论 -
PHP中正则匹配中文的坑
php中正则匹配中文的时候,不能使用/[\u4e00-\u9fa5]/,而要使用/[\x{4e00}-\x{9fa5}]/u表示,下面是一个测试例子,需求是如果字符串中包含< > " ' 中文,则输出正确,否则输出失败<?php header('Content-type: text/html; charset=utf-8'); $str = "php编程<>...转载 2018-12-11 20:37:19 · 1501 阅读 · 0 评论 -
ThinkPHP3.2.3中URL带参数跳转
ThinkPHP框架针对前端页面跳转,给出了一种路由方法,通过{:U('模块/控制器/方法')}来跳转到对应的页面中,当这种方法在带有参数并在JS中使用的时候这里给出两种方式,比如说,当控制器为index,方法为index,且参数有两个a1和a2,按照框架的方式,我们在JS中使用应该这样写://字符串拼接方式window.location.href = "{:U('index/index?a1...原创 2018-10-24 13:47:19 · 5166 阅读 · 0 评论 -
windows平台实现web系统自动定时发送邮件
前言最近课堂项目遇到需要web系统自动在特定时间给用户发送邮件的功能需求,这里提供一种可行的思路和部分示例代码,大概思路就是通过window的任务计划程序来定时执行bat脚本A.bat,...原创 2018-10-22 20:53:35 · 3021 阅读 · 0 评论 -
PHPMailer实现后台发送QQ邮件
引言PHPMailer是PHP的全功能电子邮件创建和传输类包,可以支持HTML格式的邮件内容,并且可以允许在没有本地邮件服务器的Windows平台上发送电子邮件。具体的详细特点介绍可以看GitHub中的说明文档。说明最近在项目IT管理课上的项目中遇到了一个用户通过电子邮件修改密码的需求,想着用PHPMailer来实现,这个类包功能强大,很方便,这里我参照Github中的实例写了一个测试用的程...原创 2018-10-21 21:31:24 · 1898 阅读 · 0 评论 -
Sublime Text3配置Nodejs环
一个推荐准备进攻node,正在看那本node的经典之作《Node.js实战》,[美]Mike Cantelon/Marc Harter/T.J.Holowaychuk/Nathan Rajlich 著,ISBN为9787115352460。这本书也是我的一位大佬学长推荐的,我翻阅了一下,目前看完了第一章,确实是一本很nice的书,这本书理论和实践结合起来讲,不仅仅是对node可以有更好的理解,对...转载 2018-10-22 13:48:45 · 497 阅读 · 0 评论 -
CVTE(视源股份)前端实习生面经
忐忑从3月6号在线笔试到3月8号技术一面二面,短短3天的时间,让我尝到了求职的不易,这是我第一次正儿八经参加面试,还是专业面试,3月7号晚上接到一面邀请短信的时候,有些高兴又有些担心,还差点失了眠。我做Web有一年半了,但是早期的时候,给自己定位全栈,学的东西很杂,也不深入,尽管勉勉强强做了些项目有一些成绩,但是真正开始了解前端也只是半年前,也是这半年我开始知道自己前端的水平还停留在5,6年前传...原创 2019-03-11 00:13:35 · 8345 阅读 · 7 评论 -
一文看穿JavaScript中this的圈圈绕
导文目录为什么说JavaScript中 this 指针圈圈绕?JavaScript 中 this 绑定作用域的四种情况先搞清Node环境中和浏览器环境中全局对象的异同默认绑定隐式绑定硬绑定(或者说 显示绑定)new操作符绑定ES6中引入箭头函数对this的绑定产生了什么影响?附上前面程序的输出答案为什么说JavaScript中 this 指针圈圈绕?相比C++或...原创 2019-04-01 18:13:02 · 544 阅读 · 0 评论 -
类Array对象中是否该直接使用Array的原型方法?
近期进击掘金,感觉是个很好的平台,以前自己怎么都不知道呢?闲话不多说,这篇博文分享一个JavaScript中的小问题 ,题目来自于掘金一位分享者的分享,先预告一下博主水平有限也做错了var obj={ '2' : 3, '3' : 4, 'length' : 2, 'splice' : Array.prototype.splice, 'push' ...原创 2019-04-09 20:55:27 · 718 阅读 · 0 评论 -
JS数组扁平化的思路与实现
其实最核心的思路就是递归,如果单纯用编程语言实现,而不是使用一些巧妙的API的话,本质的思路就是递归,因为JS数组多层嵌套,实现扁平化的过程其实就是层层递归取出元素的过程,这里给出三种实现JS数组扁平化的方法。纯递归实现扩展运算符降维打击纯递归实现算法的步骤是这样的:顺序扫描初始数组{arr}的第一维,取元素element,若element还是数组则执行3,若element是单个...原创 2019-05-06 11:46:01 · 572 阅读 · 0 评论 -
算法全排列问题(JS实现)
/** * 全排列问题 * 算法思想: 分治法的思想 * 依次将待排列的数组的后n-1个元素与第一个元素交换,则 * 每次递归处理的都是后n-1个元素的全排列问题。当数组元 * 素仅有一个时为此递归算法的出口 * * Method : fullPerm * param : { * list : 需要全排列的数组 * k : 当前递归的数组的第一个元素下标 * ...原创 2019-01-16 00:18:15 · 665 阅读 · 0 评论 -
顺转数组(JS实现)
顺转数组是什么?语言描述不太好描述,但是举个例子你就懂。比如,数字5的顺转数组,如下:1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 9如你所见,1到25构成了一个5*5的数组,且数组的构成像一个右螺旋,这个就叫数字5的顺转数组那么问题来了?如何求一个数字的顺转数组?例如,这样的题目,输入一个数字n,请输出数...原创 2019-03-21 20:57:51 · 646 阅读 · 0 评论 -
给120个HTML标签分个类
很久没有更博了,今天更新一篇文章,我们知道HTML标签很多,常用的标签大概有50-60个左右,但是你知道HTML标签总共有多少个吗?我统计了一下,大概是120个左右(有一些被废弃,有一些HTML5中新增)。想要完全记住这120个HTML标签当然可以,但是如果长时间不用,自然也是会忘记的。本博为了巩固前端基础知识,近期看了一遍所有的HTML标签,然后发现其实这些标签可以大概分为 8 类 :元信息...原创 2019-03-04 09:23:48 · 423 阅读 · 0 评论 -
Markdown的使用(语法基础)
这里笔者介绍Markdown的一些基本的语法,因为优快云博客配置为Markdown编辑器,平时写博客也用得到。markdown是什么?Markdown是一种简单的标记语言,它可以被编译成 Html 页面,或者也可以单独以纯文本的形式呈现。Markdown被设计出来是为“易读易写”。对于一般人来说,html是比较难操作的,Markdown设计的初衷并不 是取代HTML的地位,而是希望成为更适用于网原创 2017-08-08 22:26:35 · 900 阅读 · 0 评论 -
Vue-cli 3.x + axios 跨域方案踩坑指北【同步掘金】
缘起最近实验课上需要重构以前写过的一个项目(垃圾堆),需要添加发生邮件提醒的功能,记得以前写过一个PHP版的实现,所以想把PHP写的功能整理成一个服务,然后在前端调用。但是这个项目是JavaWeb,也就是说我需要面对跨域的问题。不过本篇文章,讲的并不是如何解决这样的跨域问题,而是我在找如何解决这个问题的路上遇到的坑。其实,在前端工程化大行其道的现在,前后端已经分离开来,前端为了提高工作流效率往...原创 2019-07-04 12:50:43 · 1461 阅读 · 1 评论 -
排序算法大荟萃(JS实现,持续更新中)
排序算法——选择排序原创 2019-01-15 17:23:36 · 346 阅读 · 0 评论 -
再谈JS——细谈那些JS中的冷门语法
议题ECMA-262中描述了具有特定用途的关键字,以下是ECMAScript全部关键字,其中带*的是第五版的新增关键字:break do instanceof typeof case else new var catch finallyreturn void c...原创 2018-12-03 21:11:47 · 706 阅读 · 0 评论 -
在谈JS——浏览器解释script标签时默认阻塞后续DOM解析
议题&amp;amp;lt;script&amp;amp;gt;的解析会阻塞DOM的解析,如果将&amp;amp;lt;script&amp;amp;gt;放到&amp;amp;lt;head&amp;amp;gt;中,则&amp;amp;lt;body&amp;amp;gt;中的页面内容需要等到脚本下载并编译完成才可以渲染;早期&amp;amp;lt;scri转载 2018-12-02 18:31:35 · 1871 阅读 · 1 评论 -
JavaScript Array对象的filter方法详解
Filter语法array.filter(function(currentValue,index,arr), thisValue) 参数 描述 function(currentValue,index,arr) 必选项,每个filter都需要一个回调函数用来写过滤的逻辑 ...原创 2019-01-06 13:13:16 · 3596 阅读 · 0 评论 -
再谈JS——JS性能提高之解除引用
前言 其实在V8引擎下,JavaScript的性能已经得到大幅度提高,这里探讨的是在理论层面,具体一点就是JS的垃圾回收机制,可以提高Javascript性能的一种途径或者方式,也算是一篇读后总结吧,这里参考了《JS高程第三版》的第四章有关JS内存管理的讲解。正文 我们先来看看,如何做可以在理论上提高JS的性能,我们来看两段代码:代码段Afunction createPerson(nam...原创 2018-12-27 11:29:30 · 2220 阅读 · 0 评论 -
Vue + Webpack 构建模块化开发框架详解[与sf同步]
文章指南概要先在文章开头,做一个总结式的说明,这篇文章主要是讲在前端模块化开发模式中如何用Webpack这样流行的打包器来为当下一个很火热的框架——vue.js,构建一个项目框架。本文例子是一个基本的Demo,想构建更为复杂和高维护性的框架,请参考Webpack官网Guide教程前提要看懂本文的Demo,需要你掌握或了解以下内容:前端传统式开发模式 VS 前端模块化开发模式...原创 2018-12-17 17:11:37 · 1180 阅读 · 0 评论 -
CSS3中如何解决子元素继承父元素的opacity属性
问题css3中的opacity属性是用来设置 div 元素的不透明级别的,但是我们往往会遇到因为父级元素设定opacity后,子元素也跟着透明了,但是有时候我们只是想让背景是透明的,这该如何解决呢?错误的示例我们常常想到的方法是直接给子元素的opacity设定为1,如下:&amp;lt;!DOCTYPE html&amp;gt;&amp;lt;html&amp;gt;&amp;lt;head&am原创 2018-12-13 23:34:10 · 10568 阅读 · 2 评论 -
Vue全家桶 + webpack 构建单页应用初体验
文章指南主题 承接这上一篇Vue + Webpack 构建模块化开发框架详解,我们知道了如何使用webpack对vue进行打包,从而开始我们的前端模块化开发之路,这一篇在上一篇的基础上讲解 Vue全家桶(vue+vuex+vue-router+axios) + webpack 构建一个单页应用Demo前提 阅读本篇内容之前,除了需要掌握上一篇内容中的前提部分的知识,还需要了解以下内容原创 2018-12-20 12:26:05 · 675 阅读 · 0 评论 -
前端模块化开发中webpack、npm、node、nodejs之间的关系[小白总结]
前言入门前端的坑也很久了,以前很多大小项目,前端都是传统式开发,一直在重复造轮子;接触VUE后,对vue-cli有了解后,仅仅知道vue-cli是一个vue项目的脚手架,可以快速的构建一个vue的基于npm的模块化项目,vue内部的打包机制其实还是借助webpack;但是对webpack\npm\node\nodejs这几个在前端模块化中的高频词总是傻傻分不清,不知道他们之间的具体关系,今天花了...原创 2018-12-05 03:04:07 · 17081 阅读 · 11 评论 -
前端Vue组件化开发+后端JavaWebMVC开发模式说明
本篇博客是针对企业级开发课程的大作业写的开发模式说明,本来是要写后端渲染的,但是为了提高开发效率,和前端模块复用性,进而使用Vue的组件化开发前端,并把渲染层放到前端,后端只做动态数据服务本篇暂时先说明在将渲染层放至前端后,后端MVC如何做来仅提供动态数据服务后端MVC模式说明首先,后端MVC模式下文件结构如图:DA层主要是各种JavaBean,请确保纯净的JavaBean,可以重载...原创 2018-11-20 17:55:18 · 1482 阅读 · 0 评论 -
如何找到fastjson.jar这个阿里开源的jar包(笑哭Q^Q)
Java编程中有时候会遇到JavaBean对象、json字符串、json对象之间互相转换的问题,网上找发现都是说用fastjson很方便,一大堆教程说如何使用fastjson,但是却找不到从哪里下载这个阿里的开源项目的jar包,搜索fastjson下载发现全是优快云下载里的资源,必须吐槽一个5分的下载资源竟然要50个积分,算了还是自己找吧下面是我找到资源的方法,供大家参考,3张图搞定:或者...原创 2018-11-19 22:17:30 · 20150 阅读 · 11 评论 -
JDK的下载安装与环境变量的设置
JDK是什么?JDK,全称为Java development kit,是Java语言的软件开发工具包(SDK)。没有JDK事无法编译Java程序的,如果只想运行Java程序,则只需安装相应的JRE(Java runtime environment的缩写)。JDK的下载安装百度搜素“jdk下载”,点击第一个词条,进入orale官网然后选择与你电脑硬件软件系统匹配的jd原创 2017-08-27 11:22:03 · 500 阅读 · 0 评论 -
json字符串转json对象(转)
忘记出处是哪里了,今天需要使用,突然想到以前的一个完美解决的代码片,贴出来作为备忘录 //将json字符串转为json对象 var jsonStr = data.data //去掉字符串中的空格 jsonStr = jsonStr.replace(" ",""); //typeof h...转载 2018-10-06 16:10:15 · 624 阅读 · 0 评论 -
配置javaWeb开发环境(全)
引言下面从基础环境、服务环境、、工具环境来说明JavaWeb开发时的环境配置,如何让一个小demo跑起来基础环境JavaWeb后端技术基于java语言,所以基础环境必须先有jvm的支持,也就是要去下载jre和jdk,有关jdk的下载和3个环境变量(JAVA_HOME 、CLASSPATH 、 PATH)的配置,请看我的另一篇博客: https://blog.youkuaiyun.com/Ange...原创 2018-09-06 20:29:41 · 830 阅读 · 1 评论 -
红包抽奖H5
引言最近,为逗女朋友开心给女朋友写了一个红包抽奖H5小应用,是一个纯前端的小应用,主要用了vue、layer.js、fakeLoader.js、jQuery.cookie.js等框架和插件,效果看下面的展示这可以说是程序员撩妹神器 [滑稽脸],需要的去我的下载资源下载[附链接]:https://download.youkuaiyun.com/download/angellover2017/10701989...原创 2018-10-05 02:03:04 · 2656 阅读 · 1 评论 -
三剑客+Jquery.ajax+VUE单页+ThinkPHP3.2.3的前后端分离开发
说明这篇博客是给团队内人员的一个模式开发的说明文档,当然对于其他读者也可以了解,不喜勿喷前言其实,这种开发模式还是挺少见的,vue自有vue-cli可以使用webpack打包前端项目,然后后端就做后端的活提供数据服务,这样前后端分离的彻底,但是限于笔者个人水平,vue-cli和webpack正在学习中,所以替代的方案,就是这种看起来怪怪的组合,不过实验证明是可行的方案,缺点就是前后分离不是很...原创 2018-10-08 21:46:59 · 2543 阅读 · 3 评论 -
从网站架构的发展看缓存架构的发展(参考《深入分布式缓存从原理到实践》)
前言本文的观点和看法是对《深入分布式缓存从原理到实践》于君泽 曹洪伟 邱硕等著[ISBN : 9787111585190]一书中第一章内容的总结,笔者最近在看缓存架构方面的书,觉得这本书很不错,来自京东,蚂蚁等多家大公司的架构师合著的一本书,内容不算详实,但是结合原理和实践来讲解很有趣,但是内容偏难,笔者也是很多地方看不懂,但是对于不懂缓存架构的但是想构建起来对于缓存架构的知识框架的人来说,是一...原创 2018-10-11 18:12:22 · 735 阅读 · 0 评论 -
Mysql由于文件配置或服务冲突无法启动问题
引言 Mysql在多次反复安装卸载在安装的过程中,可能会由于上次安装的遗留文件或系统配置的影响,导致再次安装的Mysql服务无法启动。使用Mysql很久了,今天遇到这个问题,也是很棘手,查阅后有一些方案和心得分享一下先放几个友情链接,可以作为参考,我下面会做一写总结:1、本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动2、【错误解决】本地计算机...原创 2018-09-26 23:05:23 · 1420 阅读 · 0 评论 -
Windows下配置Nginx本地映射多域名访问多
引言最近在玩nginx,因为电脑是windows系统,也不想折腾再装一个centos,所以直接在windows上配置的WNMP环境,然后想把一起写的放在xampp里面的项目都迁移到新环境下,但是遇到一个问题,就是Nginx如何配置本地IP映射到多个域名,网上的教程其实很多,都是差不多了,配置起来也很简单,但是windows下的路径问题真的是个坑,我下面记录一下我遇到的坑如何配置主机映射...原创 2018-10-01 11:04:33 · 5036 阅读 · 2 评论 -
CentOS7 离线编译安装Mysql5.7
First下载Mysql-5.7的rpm-bundle版本,并使用xftp或者flashftp等工具上传到CentOS上Secondtar xvf mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar ,解压后会有很多rpm包,如下所示mysql-community-client-5.7.23-1.el7.x86_64.rpmmysql-community...原创 2018-10-18 14:45:58 · 636 阅读 · 0 评论 -
Nginx+php-fpm+php环境下部署ThinkPHP3.2.3发生502错误
引言因为nginx不支持thinkphp的pathinfo模式的访问方式,所以有别于在apache中的部署,thinkphp在nginx中部署需要开启thinkphp的url兼容模式,并配合这nginx中的重写url配置,将url的访问方式交给thinkphp框架处理,这样就可以正常访问thinkphp的控制器了具体方法首先首先,这里给出官方的对于thinkphp3.2.3...原创 2018-09-16 00:45:49 · 2500 阅读 · 0 评论 -
LAMP环境迁移至LNMP环境时session丢失或无效问题(解决方案)
引言这里强调是LAMP环境迁移至LNMP环境,是因为这里的session失效问题是由于从apache迁移至nginx导致的用户组不对应导致的session无法读写问题,这只是导致session失效的一种可能原因,还有其他可能比如,php.ini配置问题、session文件目录读写权限问题、如果用的php框架是thinkphp的话可能也会出现session失效问题(这个是框架自身的bug...原创 2018-09-16 20:40:28 · 1028 阅读 · 1 评论 -
微信小程序中实现多组图片上传的组件
引言最近开发微信小程序,遇到一个需求,就是多组图片上传 ,具体是什么需求呢? 直观的来讲,就像我们平时发朋友圈,亦或者是发QQ说说的时候,需要上传图片,点击 +号可以调用手机相册或者手机相机,然后上传的图片可以自适应的显示出来。好了,不多说,在这个引言里面,我先展示以下我写的组件的效果,完整代码请去我的优快云下载中下载,地址↓: https://download.youkuaiyun.com/...原创 2018-08-04 22:12:09 · 17853 阅读 · 21 评论 -
微信小程序里引入SVG矢量图标
引言因为微信小程序的限制,引入外部图片或者矢量图,只能通过设置背景图片background-image : url("base64转码后的代码");的方式来进行操作。同时还是因为微信小程序的限制,我们要先把svg的xml编码转码为base64编码首先,说明以下我们常见的svg矢量图是什么?下面引用百度百科的话:svg是基于可扩展标记语言(标准通用标记语言的子集),用于描述二维矢量图形的一...原创 2018-08-04 11:00:41 · 22565 阅读 · 3 评论 -
微信小程序中引入字体图标(阿里iconfont)
引言这篇博客算是转载的一篇文章,我在写一遍方便熟悉具体流程和方法。支持原博客作者,点击以下链接: 微信小程序使用字体图标方法总结总结一下,步骤分为4步:去阿里iconfont官网找自己需要的字体图标,将需要的字体图标添加入库从库中点击“下载代码”至本地将.tff格式的字体文件转换格式为base64把转换后的.css文件中的代码和原来.css文件中的代码拼接,并复制进微信小...转载 2018-07-16 12:04:15 · 8706 阅读 · 3 评论
分享