自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张旭乾 - 全栈工程师/海归

分享前端、后端知识,以及程序员的日常。

  • 博客(66)
  • 论坛 (5)
  • 收藏
  • 关注

原创 5个 JavaScript 怪异行为及其原因

如果你用 JavaScript 写过项目或者参加过面试,那一定遇到过不少令人匪夷所思的问题。JavaScript 早期的规范不统一,也没有严格的标准,再加上它的语法灵活多样,有些看起来就不正确的代码却能正常执行,一些看起来符合逻辑的代码,运行结果却相差十万八千里。这些问题在日常开发中经常会导致 BUG,更重要的是,很多面试官会把它们拿出来当考验咱们 JS 工程师的能力。那么这篇文章就总结了 5 个 JavaScript 比较坑的问题,以及它们出现的原因和解决方法。1、可选分号问题:function f

2020-12-19 20:39:51 97 1

原创 1024:程序员,你的身体还好吗?

又到一年一度的 10 月 24 日程序员节了,按百度百科的定义,这一天的意义是拒绝加班:百度百科:1024程序员节是广大程序员的共同节日。1024是2的十次方,二进制计数的基本计量单位之一。针对程序员经常周末加班与工作日熬夜的情况,部分互联网机构倡议每年的10月24日为1024程序员节,在这一天建议程序员拒绝加班。然而反观现实中程序员的工作与生活,这一天的意义真的达到了吗?从几何时,程序员成了加班、996 的代名词,从以前业务做不完偶尔加班变成了现在的常态,不得不说一句俗话:这是时代的进步还是倒退?

2020-10-24 14:02:51 239

原创 鸿蒙 OS:使用 JavaScript 开发 Todo App UI 界面

距离鸿蒙 OS 2.0 发布已经过去一些日子了,看到鸿蒙系统强大的设备共享能力,我觉得未来它一定能够成为主流的操作系统。在利用了分布式系统的优势之后,多个设备间可以共享应用程序界面和数据,并且对于开发者,也可以使用一套代码编写应用,就可以在多种设备终端上运行。一开始我并没有太关注鸿蒙系统,以为它只能使用 Java 开发应用,跟前端好像没啥关系,但是看了开发文档后,发现 UI 部分既支持纯 JavaScript 开发,也支持纯 Java 开发,还可以 Java 跟 JavaScript 混合开发。鸿蒙应用的

2020-09-19 22:38:08 21346 22

原创 当你还在纠结学哪个技术时,就已经错失了进步的机会

目录分析没有职业方向想一劳永逸缺乏自信解决方案优势更好的应对职业风险产生大局意识增加财富总结你是不是在面对市面上众多的技术的时候,不知道选择哪个才能对自己的职业和未来发展有所帮助?有这样的想法是正常的,因为随着科学的发展,现在的编程技术已经到了百花齐放的地步了。从编程语言上,你可以选择 Java、JavaScript、Go、PHP,还有基于它们的框架等等。从客户端上,可以选择移动端,web 端,还有后端等等。从行业领域上,还可以选择数据科学、金融工程或商业智能分析等等。那么这么多的技术和领域,

2020-09-11 23:01:31 1073

原创 一文搞懂 CSS 盒子模型:概念、种类、布局方式、边距塌陷全都在这里了

在用 CSS 布局的时候,经常会有各种怪异的情况出现,有些元素就是不在它应该在的位置上,也显示不成该有的大小,页面乱七八糟。这些其实还是因为 CSS 的布局基础没有掌握牢固且不够熟练。今天就深入了解一下 CSS 最基础也是最重要的部分 - 盒子模型,分别会讲到盒子的概念、布局方式、box-sizing 属性、特殊的盒子模型以及边距塌陷,相信你掌握了它们之后就能解决一大半的布局问题。目录盒子模型盒子的类型content-boxborder-box特殊的盒子-替换元素盒子的布局方式外部显示类型块级盒子行内盒子

2020-08-24 12:00:04 688

原创 自学前端,学到什么程度就可以找工作了?

目录个人目标大厂创业公司公司要求技术能力基础框架软技能沟通能力STAR 框架原理回答框架总结好多人都想知道,前端工程师到底要需要掌握什么技能、到什么程度,才能去找工作?最简单的答案:把 html、css、 js 基础学扎实,再掌握vue或react前端框架之一就可以了。真的是这样吗?技术上看似乎没问题,但是找工作不只要从技术上下手,还要从个人目标和公司的招人标准综合进行考量。那么接下来,我们从这几个方面来分析一下,前端工程师找工作的必要条件。个人目标现在我们的教育并没有太着重于个人目标和职业规

2020-08-15 12:37:04 3687 3

原创 TypeScript 入门看这一篇就够了!
原力计划

目录这里写目录标题简介什么是 TypeScript为什么用 TypeScript编写和运行 TS 代码Node TSCDenotsconfig.json基本语法基本类型隐式显式组合类型类型别名对象类型(interface)接口作为函数参数类型数组类型泛型tuple(元组)总结简介我第一次使用 TypeScript 是16年在读研的时候,学校的算法课是使用 TypeScript 实现的。当时只知道 TypeScript 是 Angular 开发的必备语言,没想到还能这么通用。后来在写作业的时候,发现 Ty

2020-06-09 22:13:58 449

原创 给前端工程师看的后端科普

目录简介应用的构成前后端分离的演化后端的作用简单来讲...大规模后端应用数据、算法工程师各司其职简介前端工程师了解后端的功能和作用之后,能更好的和后端工程师进行沟通,减少沟通成本,另外也有助于向全栈工程师方向发展。在开始之前,先回顾一下应用的构成:应用的构成一个完整的应用通常包括前端和后端两个部分。前端是直接与用户打交道的部分,通常指的是网页,采用 HTML/CSS/JS 语言编写,运行在用户自己电脑的浏览器上。后端则是运行在远程的服务器上,用来收集和处理用户传来的数据,然后把结果再传给前端,展现给

2020-05-12 21:38:45 387

原创 5个技巧助你成为 CSS 大神
原力计划

目录简介样式调整action布局调整响应式布局action形状、特效的拆解与合并action页面组件设计原则actionCSS 模块化学习actions一些学习资源简介作为一名前端工程师,经常在写完 HTML 以后,才觉得真正的噩梦要开始了,啊,写 CSS 的时候,面对满屏乱飞的组件,真想手动给他们挪到该在位置上……都说 CSS 很难掌握,最愁给页面编写样式,其实都是因为还没有形成一个对 C...

2020-04-29 21:59:22 506

原创 一文搞懂 CSS Flexbox 布局 - 2020年最新版
原力计划

目录开启 Flexbox 布局对齐方式justify-contentflex-startcenterflex-endspace-betweenspace-evenlyspace-aroundalign-itemsstretchflex-startcenterflex-endbaselinealign-content子元素覆盖对齐方式排列方式空间占比Flex-basis缩放flex-growflex...

2020-04-06 16:25:24 606

原创 制作渐变背景生成器 - React State和Event教程
原力计划

Hello, 今天教你写一个渐变背景生成器。我会用这个例子来解释 react 的 state,状态管理,还有事件处理。你将学到的这个小工具提供了两个颜色选择器,分别可以选择渐变的两个颜色,渐变的角度是 75 度,线性渐变。另外还有一个重置按钮可以把渐变恢复成初始值。效果演示:源码:Github - React-Examples示例和视频State 简介首先看一下什么是 state,...

2020-03-21 13:46:59 349

原创 用一组美丽的按钮来掌握 React Props 用法
原力计划

目录你将学到的创建 React 工程创建 Button 组件编写 Button 默认样式用 Props 给 Button 不同的样式classnames 组合样式线框样式显示所有按钮样式你在写 HTML 页面的时候肯定知道,html 标签的属性都是固定的,比如 a 标签的 href, input 里边的 type 属性。这些属性都是内置的,不方便扩展和复用。而用 React 创建组件的话,可以给...

2020-03-18 13:22:22 222

原创 你为什么应该学习React?
原力计划

Hello! 今天来带你走进 React 的大门!我第一次听说 React 是我在美国读研的时候,室友选了 web programming 这节课,然后遇到了关于 react 的好多问题,就是总也配置不好。我看他那个时候 React 的配置特别麻烦,要引入一堆依赖,像 bower, babel 等等… 还有文档写的也不清楚。有一次他刚开始做一个作业,问了我一个问题,大概是有一个组件显示不出来,结果...

2020-03-14 17:30:18 224

原创 超简单!使用 Docusaurus 搭建个人博客(二)
原力计划

目录发布到 github部署Zeit发布到 zeit部署到国内购买域名购买服务器备案配置主机和域名配置 github actions发布博客B 站视频 - 点击传送如果你看了上期视频的话,那么你应该学会了怎么在本地搭建一个 docusaurus 博客,但是你不能只在本地来看这个博客吧,得让全世界来欣赏你的杰作,所以说咱们得把这个博客部署到服务器上。部署有两种方式:部署到国外,是免费的。部...

2020-03-13 22:15:54 726 6

原创 超简单!使用 Docusaurus 搭建个人博客(一)
原力计划

目录历史迷茫博客有啥用?Docusaurus 简介安装运行环境安装 docusaurus运行 docusaurus项目结构配置为博客模式发表第一篇博客B 站视频 - 点击传送历史迷茫我以前总也找不到一个满意的博客系统,wordpress 这个程序又大,然后配置也不方便。占用的服务器的资源也多。我就想有没有一个又简单又快速的博客平台,后来发现了一些静态的网站生成器,像 hexo 这种,但是发现...

2020-03-05 20:52:56 2075 4

原创 11个前端工程师必备的网站

好多小伙伴有疑问,就是说有哪些值得去关注的前端网站,我知道大家可能都苦于找不到一些有价值的,还有值得信赖的网站去学一些比较货真价实的前端技术。生怕有哪些水文或者是一些乱七八糟的网站,把咱们的这个知识给误导了。这里呢我准备了几个我经常关注的一些网站,一部分是国外的,然后有一部分是国内的,因为国内的好多的都是质量参差不齐,但国外的话普遍的质量比较高(事实如此)。不过呢,咱们国内的也有一些比较好的平...

2020-03-02 12:38:21 4606 2

原创 想成为前端大神秒杀群雄?收下这份2020年最新前端学习路线!
原力计划

B 站视频版:点击传送这段日子在 B 站上收到小伙伴最多的要求就是出一个前端学习路线,我能够充分的感受到大家抓耳挠腮加挠墙的迷茫~所以在这里给大家总结了一套前端学习路线。先从初级前端工程师所需的技能开始,然后一路升级到高级工程师该掌握的技能,层层相扣,让大家在工作中能游刃有余。最后附上我自己是如何从一个后端工程师转成了前端工程师^^。希望我的经历能对大家有帮助。俗话说知己知彼百战不殆,要成...

2020-03-01 18:21:02 22251 66

原创 从零实现一个网络科技公司官网 - HTML CSS 前端实战

【持续更新】视频地址:点此观看本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSS Grid布局,支持响应式,有流畅过渡和展现动画。...

2020-02-05 18:22:56 637

原创 利用React 自定义Hooks实现业务逻辑复用实例

目录简介适用读者请求数据的例子需求定义 States加载 Posts加载 Todos展示数据问题用自定义 Hooks 改造useRequest加载 Posts 和 Todos状态隔离扩展总结简介React Hooks 除了可以给函数式组件赋予状态和生命周期管理外,最重要的一点是可以把共用的逻辑处理代码抽离出来给不同的视图组件进行使用,它的目的和 HOC 和 Render Props 基本相同。...

2019-12-12 16:19:38 1598 1

原创 如何把JavaScript Map.keys()转换成数组

最近在写算法题时,发现一个小难处,javascript里的 map.keys() 获取出来的不是一个数组,而是一个 iterator,只能用 interator.next().value 获取值,很不方便,然后来查阅资料发现有两个解决方法:解决方法一let keys = map.keys();let arr = Array.from(keys);解决方法二let keys = map....

2019-11-13 20:52:23 3504

原创 用了这么长时间的 React useEffect hook,你用对了吗?

主线什么是 Effect与生命周期的关系运行时机类实际工作的例子 - 抓取数据第二个参数添加其他属性划重点useEffect 是 React Hooks 的核心,要保证理解它的运行机制和正确的使用方法才能避免这样那样的坑。在以前的工作中,因为它我碰到过无数个坑,比如拿到的值是旧的,该执行的时候不执行,不该执行的时候执行了……所以为了避免如上尴尬、节省绞尽脑汁找 bug 的时间、保护咱们的发际线...

2019-11-12 12:58:28 3519 1

原创 React Hooks - useState 的使用方法和注意事项

目录简介适用对象示例useState 使用方法定义状态更新状态状态依赖注意事项useState 的参数状态依赖总结简介在上一篇中介绍了 React Hooks 的基本概念,初识 React Hooks - React 组件定义的变革,这一篇将介绍 useState Hook,使用它可以给函数式组件添加状态支持,另外还会介绍使用它的一些注意事项。适用对象本篇文章适用于以下读者熟悉 Rea...

2019-11-09 18:31:16 7634 4

原创 初识 React Hooks - React 组件定义的变革

目录适用对象什么是 React HooksReact Hooks 作用与 React Class Component 的区别Hooks 的种类接下来React 在 16.8 版本中发布了 hooks 特性,通过本篇文章大家会了解到 hooks 的基本概念、作用和优势,以及与 class 类型的组件的区别。适用对象本文适用于以下读者:有 React 使用经验想了解 React Hooks...

2019-11-08 12:19:01 972 2

原创 工作后出国留学经历总结

好多人纠结工作后再出国留学晚不晚,担心自己文化跟不上,或者怕跟年轻人相比,自己少了很多的竞争力,毕竟年老色衰,精力不够,咋跟能通宵拼命的小孩子们比呢?不过事实上并不是这样。现在中国的经济在飞速发展,我们的生活水平直线上升,越来越多的人已经有充足的资金去出国镀一把金了,所以我就拿我本身的例子来向大家揭开一名工作后去美国读研党的经历,以对大家的疑惑有所帮助。大家有什么问题可以私信我。心急的小伙伴可...

2019-08-29 22:00:38 452 2

原创 为 Eureka 添加 Http Basic 认证

简介在网络世界中,任何网络中的服务都是不安全的,为了使我们的 Eureka 服务更加安全,我们可以添加各种各样的认证方式,以使客户端在提供相应的证明之后才能够注册到 Eureka 中。而这次我们就添加一个最基本的 Http Basic 认证到 Eureka 中。 HTTP Basic 是简单的用户名密码认证,客户端在发送注册请求时,会附带用户名和密码一起发送到 Eureka Server,这种...

2018-05-19 18:32:53 895

原创 配置 Eureka Server 集群

简介为了使 Eureka Server 实现高可用,我们需要为它配置集群。这样当有一台 Eureka Server 有故障时,集群中的其他 Server 可以进行代替。Eureka 集群之中的 Node 通过 P2P 通信的方式共享注册表,以使得每个 Eureka Server 的注册表保持一致。本教程将在本地开启两台 Eureka Server 以测试集群的搭建。项目源码...

2018-05-17 11:28:09 626

原创 Spring Cloud Config Client 超时与重试

简介有时客户端需要在 config server 无响应时进行重试,以给 config server 时间进行恢复。利用 spring 提供的重试组件,我们可以方便的配置重试机制,包括重试间隔,重试次数等。项目源码Gitee码云为 web 项目添加依赖开启客户端重试功能需要两个新依赖,spring-retry 和 spring-boot-starter-aop,把如下代...

2018-05-15 16:30:51 2755

原创 Spring Cloud Config - RSA简介以及使用RSA加密配置文件

简介RSA非对称加密有着非常强大的安全性,HTTPS的SSL加密就是使用这种方法进行HTTPS请求加密传输的。因为RSA算法会涉及Private Key和Public Key分别用来加密和解密,所以称为非对称加密。Private Key和Public Key有互操作性,即用private key加密的可以用public key解密,用public key加密的可以用private key解密。...

2018-05-11 13:34:51 1264

原创 使用对称加密来加密Spring Cloud Config配置文件

简介在真实项目环境下,我们不会在配置文件中明文存储密码等机密性文本,以防被窃。Spring Cloud Config提供了加密方法,以使明文文本加密成密文存储在配置文件中。Spring Cloud Config提供了两种加密解密方式,一种是对称加密,一种是非对称加密。这篇文章将先展示如何使用对称加密。对称加密简介对称加密即通信双方用同一密钥(key)对文本进行加密和解密。它有两...

2018-05-10 13:09:13 1032

原创 为Spring Cloud Config Server配置远程git仓库

简介虽然在开发过程,在本地创建git仓库操作起来非常方便,但是在实际项目应用中,多个项目组需要通过一个中心服务器来共享配置,所以Spring Cloud配置中心支持远程git仓库,以使分散的项目组更方便的进行协作。基础环境JDK 1.8Maven 3.3.9IntelliJ 2018.1Git项目源码Gitee码云配置远程git仓库首先我在gite...

2018-05-09 11:44:14 1222

原创 使用Spring Boot开发者工具进行自动重启和页面自动刷新

简介大家可能都听说过开发Node.js应用时可以使用多种工具对开发者提供便利,如WebPack提供了开发者服务器来支持js应用动态更替,并在保存文件时自动刷新浏览器。Spring Boot也提供了相似的开发者工具,让我们更快速、更舒心的开发Spring Boot应用。大家看完本教程就可以学会如何如用Spring Boot开发者工具进行自动重启和自动刷新页面。自动重启原理Spring...

2018-05-07 16:25:48 1006

原创 Java 10更新汇总,新的编译器通吃主流编程语言

早些时候Oracle发布了Java 10,这是Oracle更改发布策略之后的第一版Java,Oracle现已决定每六个月发布一个新的Java版本,周期缩短了,但是并不是说我们要学的更多了,而是说缩短开发周期后,有助于更快修复bug,并提前放出新功能,因为时间短所以新功能并不是很多。本次更新主要有:局部变量类型推断,G1并行完全垃圾回收,以及测试版的Java-Based JIT编译器。更新详情如下:...

2018-05-06 17:03:30 565 1

原创 Spring Cloud入门教程 - Zuul实现API网关和请求过滤

简介Zuul是Spring Cloud提供的api网关和过滤组件,它提供如下功能:认证过滤压力测试Canary测试动态路由服务迁移负载均衡安全静态请求处理动态流量管理在本教程中,我们将用zuul,把web端的请求/product转发到对应的产品服务上,并且定义一个pre过滤器来验证是否经过了zuul的转发。基础环境JDK 1.8Maven 3.3....

2018-05-06 12:46:40 881

原创 程序员如何提升英语水平

本篇文章适合所有想提升英语尤其是阅读能力的人,因为我自己程序员,所以我来拿自己的亲身经历来帮助大家发现自己提高英语技能的方法。一点历史先说在中学时,虽然一开始我对英语很有兴趣,而且也考过几次高分,但是到了后来就慢慢的不喜欢学习了,高考的时候英语正好卡在90分的及格线上,然后高考分数只够上了一个专科,开始了程序员之路。动机其实我学英语的动机并不是因为技术文档都是英文的,那时候...

2018-05-05 20:28:53 5639 10

原创 Spring Cloud入门教程-Ribbon实现客户端负载均衡

简介我们继续以之前博客的代码为基础,增加Ribbon组件来提供客户端负载均衡。负载均衡是实现高并发、高性能、可伸缩服务的重要组成部分,它可以把请求分散到一个集群中不同的服务器中,以减轻每个服务器的负担。客户端负载均衡是运行在客户端程序中的,如我们的web项目,然后通过获取集群的IP地址列表,随机选择一个server发送请求。相对于服务端负载均衡来说,它不需要消耗服务器的资源。基...

2018-05-05 15:03:21 477

原创 Spring Cloud入门教程-Hystrix断路器实现容错和降级

简介Spring cloud提供了Hystrix容错库用以在服务不可用时,对配置了断路器的方法实行降级策略,临时调用备用方法。这篇文章将创建一个产品微服务,注册到eureka服务注册中心,然后我们使用web客户端访问/products API来获取产品列表,当产品服务故障时,则调用本地备用方法,以降级但正常提供服务。基础环境JDK 1.8Maven 3.3.9IntelliJ...

2018-05-04 18:44:30 397

原创 Spring Cloud 入门教程 - Eureka服务注册与发现

简介在微服务中,服务注册与发现对管理各个微服务子系统起着关键作用。随着系统水平扩展的越来越多,系统拆分为微服务的数量也会相应增加,那么管理和获取这些微服务的URL就会变得十分棘手,如果我们每新加一个微服务,就要在其它用到此微服务的地方手动加上它的URL地址或者其他通信协议的地址,这样会经常出错,而且工作量巨大,一旦某个微服务的地址发生了变化,就要手动修改所有引用它的微服务的配置文件。所以spr...

2018-05-03 14:17:14 329

原创 Spring Cloud 入门教程 - 搭建配置中心服务

简介Spring Cloud 提供了一个部署微服务的平台,包括了微服务中常见的组件:配置中心服务, API网关,断路器,服务注册与发现,分布式追溯,OAuth2,消费者驱动合约等。我们不必先知道每个组件有什么作用,随着教程的深入,我们会逐渐接触到它们。一个分布式服务大体结构见下图(图片来自于:spring.io):使用Spring Cloud搭建分布式的系统十分简单,我们只需要几行简单...

2018-05-02 12:39:41 470

原创 Spring Boot 2.0.1 入门教程

简介Spring Boot是Spring提供的一套基础配置环境,可以用来快速开发生产环境级别的产品。尤其适合开发微服务架构,省去了不少配置麻烦。比如用到Spring MVC时,只需把spring-boot-starter-web依赖添加到Maven依赖中即可。另外它还有如下特性:创建独立的Spring项目内置Tomcat, Jetty,Undertow初始POM配置文件以简化Mave...

2018-05-01 12:11:52 903

原创 Java EE开发系列教程 - Web Service

英文版同步链接:http://www.zxuqian.com/java-ee/java-ee-application-development-restful-web-service.htmlWeb Service为不同应用程序间传递数据的一种通用协议。REST,全称为Representational State Transfer,是一种数据传输形式,它规定了数据和文件都为能够通过URI访问的资源。此

2017-05-27 09:07:28 918

空空如也

想自己一个人开发软件

发表于 2011-01-01 最后回复 2011-08-26

请问大家关于php后台管理页面刷新的问题

发表于 2011-07-25 最后回复 2011-07-25

多虑的我再请教高手一个给客户做网站的问题。

发表于 2011-03-23 最后回复 2011-03-25

我现在承接了一个公司的网站,新手问问题,请经验人士帮忙!

发表于 2011-03-21 最后回复 2011-03-21

请教高手关于泛型的问题

发表于 2010-03-07 最后回复 2010-03-07

空空如也

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

TA关注的人 TA的粉丝

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