
前端
普通网友
这个作者很懒,什么都没留下…
展开
-
2020中高级前端面试题合集
2020是不平凡的一年,这一年里发生许多事情,大家也都知道。对于互联网行业来说也是一次重大的打击,也有一些企业在这次疫情中倒闭了,所以可能对于今年2020年毕业的同学来说是一次很大的考验,也关乎我们的前途。今年的面试基本上都不会线下面试,都是采取线上电话/视频的形式来进行,今天我就总结一下,分享一下自己所遇到的一些面试题,希望大家在这次春招中能够拿到满意的offer!毕竟自己当初也是看了很多师兄...原创 2020-03-19 20:49:03 · 749 阅读 · 0 评论 -
上次24个实用 ES6 方法受到好评,这次再来 10个
毫无疑问,JavaScript 是Web开发中最流行的编程语言之一。 无论使用的是 React,Vue 还是Angular,都只是 JavaScript。 JS围绕着广阔而至关重要的生态系统发展,提供了无数的框架和库,可帮助我们更快地开发应用程序。但是有时候最好退一步,尝试了解如何在没有使用库的情况下做事。 看看下面的代码片段,它们以优雅的方式解决了简单的问题,在日常项目也很实用,所以记好笔记,...原创 2020-03-19 20:48:06 · 276 阅读 · 0 评论 -
RHCE模拟
两个虚拟机上都要配置SELinux(在system1和system2都要进行配置)2.请按下列要求在 system1 和 system2 上设定防火墙系统:允许 group8.example.com 域的客户对 system1 和 system2 进行 ssh 访问。禁止 my133t.org 域的客户对 system1 和 system2 进行 ssh 访问。备注: my133t.org...原创 2020-03-14 12:15:10 · 339 阅读 · 0 评论 -
使用 Docker 和 Traefik v2 搭建 Confluence 7.3
使用 Docker 和 Traefik v2 搭建 Confluence 7.3之前写过三篇如何使用“容器化方案来搭建 Confluence”,本文将基于最近最新推出的 Confluence 7.3 来演示如何使用新版的软件。如果你想要给公司团队或者个人搭建 Wiki,可以参考之前关于如何搭建 Wiki 的实战文章,里面记录了如何高效完成搭建,并避过踩坑的方法。以往已经上车使用的用户,也...原创 2020-03-06 19:50:33 · 206 阅读 · 0 评论 -
推荐一个基于Vue 的 H5 快速开发模板
在移动端网页开发时,样式适配始终是一个绕不开的问题。对此目前主流方案有 vw 和 rem(当然还有 vw + rem 结合方案),其实基本原理都是相通的,就是随着屏幕宽度或字体大小成正比变化。因为原理方面的详细资料网络上已经有很多了,就不在这里赘述了,下面主要提供一些这工程方面的工具。关于 rem,阿里无线前端团队在 15 年的时候基于 rem 推出了 flexible 方案,以及 postcs...原创 2020-03-06 19:49:37 · 2887 阅读 · 0 评论 -
前后端分离模式有什么意义
综上B点弊端,我们不难分析出前后端分离的一些好处了。1.提高开发效率。2.降低的软件设计的耦合度。不管是前端还是后端,都可以针对不同的端,实现一些工程化的东西。3.提高了处理复杂业务的能力。后端可以只专注后端业务,前端可以专注于前端的业务。前后端分离有哪些缺点1.团队沟通成本。每个环节都需要保证沟通、协商好,否则很容易导致团队混乱,因此前后端分离模式对团队协调也是有着较高的要求。2....原创 2020-02-26 21:37:39 · 747 阅读 · 0 评论 -
前端高级进阶2:javascript 代码是如何被压缩的
这是山月关于高级前端进阶暨前端工程系列文章的第 M 篇文章 (M 随便打的,毕竟也不知道能写多少篇),关于前 M-1 篇文章,可以从我的 github repo shfshanyue/blog 中找到,如果点进去的话可以捎带点个赞,如果没有点进去的话,那就给这篇文章点个赞。。今天的文章开始了本篇文章地址在 前端工程化系列,欢迎订阅。随着前端的发展,特别是 React,Vue 等构造单页应用的兴...原创 2020-02-26 10:54:29 · 288 阅读 · 0 评论 -
Koa2源码精读
看了那么多文章,是时候也来回馈一下掘金这个让我等小白获益匪浅的社区了(●’◡’●),这篇文章主要面对的是在阅读网上其他讲解Koa2源码文章后仍有疑惑的同学,因为我也花了两天的时间来彻底搞清它的源码机制,所以这算是刚出新手村就来回馈了~这篇文章可能显得有些啰嗦,因为大部分文章的作者是有一定开发经验的带哥,所以有些新手向的东西直接一笔带过,这也正是为什么网上有那么多讲解好文我还要再写一篇(而且我就是...原创 2020-02-25 21:56:33 · 331 阅读 · 0 评论 -
手把手带你入门微信小程序新框架---Kbone
前些天在微信上收到了微信开发者公众号的文章推送《揭开微信小程序Kbone的神秘面纱》,心想:微信小程序有新框架了?抱着学习的态度点进去看了一眼,看过之后觉得这框架也太宠开发者了吧,不愧是微信团队出品。原来这个框架早在去年就已经发布了,看完只恨自己没有早点知道消息开始学习这个框架。我写本文的目的也是为了跟个风,想要让更多的人能够知道这个框架,感受它的便利,希望好学的你可以停下脚步看看~Kbone...原创 2020-02-25 21:51:35 · 1045 阅读 · 1 评论 -
前端代码是怎样智能生成的
imgcook 是以各种设计稿图像( Sketch/PSD/静态图片)为原材料烹饪的匠心大厨,通过智能化手段将各种原始设计稿一键生成可维护的 UI 视图代码和逻辑代码。逻辑开发是前端开发的需求动线图中最后,也是耗时最多的一步。从整个前端的开发过程上看,除了初始的静态视图编写,所有的 数据映射、添加动效、函数编写、事件流、埋点日志等代码本质上都是对静态视图信息的一种补充。下图中,需求的产出是 产...原创 2020-02-24 12:14:45 · 752 阅读 · 0 评论 -
从事前端半年,我是这样看待三大框架的
前端在复杂性日增的今天,三个框架被我们熟知,Vue、React、Angular,三个经常经常被我们拿来讨论,对比,比如学习哪个?前端框架解决的核心问题在我入门的时候,第一个学习的就是Vue,基本跳过了后台php、jsp结合JQuery,三个框架成为了开发三选一的问题,在后面的工作和学习中,我逐渐意识到前框框架解决的核心问题在于数据和视图同步,我也发现挺多人意识到了这一点,并且在向大众普及这个前...原创 2020-02-23 20:28:58 · 343 阅读 · 0 评论 -
基于 HTML5 WebGL 的智慧城市
国务院在今年12月印发了《长江三角洲区域一体化发展规划纲要》(下文简称《纲要》),并发出通知,要求各地区各部门结合实际认真贯彻落实。 《纲要》强调,要提升基础设施互联互通水平,打造数字长三角,协同建设新一代信息基础设施,共同推动重点领域智慧应用。大力发展基于物联网、大数据、人工智能的专业化服务,提升各领域融合发展、信息化协同和精细化管理水平。围绕城市公共管理、公共服务、公共安全等领域,支持有...原创 2020-02-23 13:41:31 · 470 阅读 · 0 评论 -
Flutter & Native 混合开发
Flutter 模式就是纯 Flutter 开发模式,原生项目被包在 Flutter 项目中,通过 Flutter 命令启动项目,命令会先编译 Flutter 工程,然后将 Flutter 编译产物复制到 Native 项目中,接着编译 Native ,最后启动 Native ,Native 调用 Flutter 。module 模式,Flutter 工程只负责产出 Flutter 编译产物,提...原创 2020-02-23 13:40:46 · 230 阅读 · 0 评论 -
前端常用设计模式
炒个冷饭,设计模式(前端常用设计模式)。我们在面试的时候很多情况都需要手写代码,所以我们写都时候尽量用es6,且里面要用设计模式。这样评分可以达到优秀,如果只是手写实现出功能那么我们只能是及格(主要面试和别人竞争)游泳健身了解一下:github尽量用大白话讲一下设计模式,设计模式不是看一次就够的,也不是这次记住就够的。将设计模式融入到我们的各个代码里,这个才是我们的目标,=。=虽然我没有做到,...原创 2020-02-21 11:02:21 · 212 阅读 · 0 评论 -
如何构建运行良好的Vue组件
很少有人最初编写Vue组件时打算将其开源。我们大多数人都是从自己编写组件开始的——我们有一个问题,然后决定通过构建一个组件来解决它。有时我们发现自己想要在代码库的新位置解决相同的问题,因此我们使用组件并对其进行重构,使其可重用。然后我们想在一个不同的项目中使用它,所以我们把它转移到一个独立的包中。然后我们想“嘿,为什么不把这个分享给全世界呢?”于是我们开源了这个组件。一方面,这意味着对于任何在V...原创 2020-02-21 11:00:25 · 125 阅读 · 0 评论 -
一步步带你用VuePress来搭建个人网站
VuePress可以让你非常方便的在Markdown文档中编写Vue代码,VuePress会为每个页面预渲染生成静态的HTML,同时,每个页面被加载的时候,将作为SPA运行这里我将带大家一步步用VuePress来搭建个人网站环境搭建查看node的版本号node -v复制代码node.js的版本号必须要大于等于8才可以全局安装vuepressyarn global add vuepre...原创 2020-02-19 14:02:23 · 376 阅读 · 0 评论 -
Workbox5+Webpack4构建离线应用
将应用中的静态资源缓存是目前最主流的性能优化方法,甚至能让应用秒开!目前常见的缓存方式有http缓存、memory cache、disk cahce、localstorage、Service worker缓存等方式,本文介绍的Workbox就是实现Service worker离线缓存的一个工具。那么问题来了,Service worker离线缓存和传统的缓存方式对比,有什么优势和劣势呢,servi...原创 2020-02-19 10:50:37 · 1384 阅读 · 0 评论 -
您可能不知道的原生 JavaScript 方法
但是,我还是在 GitHub 的仓库中看到了许多旧代码。当然,这并不是说它们不好,而是说如果使用我下面介绍的这些特性,代码将变得更具可读性、更美观。Number.isNaN 对比 isNaNNaN 是 number 类型。typeof NaN === ‘number’复制代码所以您不能直接区分出 NaN 和普通数字。甚至对于 NaN 和 普通数字,当调用 Object.prototype...原创 2020-02-18 19:33:25 · 134 阅读 · 0 评论 -
从Next.js到服务端渲染的学习
在next.js里提供了一个静态异步方法:getInitialProps,它能异步获取JS普通对象并绑定在props上,通过这个方法我们就可以在服务的获取接口数据。static async getInitialProps({ req }) {console.log(req)return {}}复制代码观察上面代码,会发现还有一个req对象,它指代的为服务的的request对象,但是作为一...原创 2020-02-16 20:36:37 · 532 阅读 · 0 评论 -
一口气说出 9种 分布式ID生成方式,面试官有点懵了
前两天公众号有个粉丝给我留言吐槽最近面试:“四哥,年前我在公司受点委屈一冲动就裸辞了,然后现在疫情严重两个多月还没找到工作,接了几个视频面试也都没下文。好多面试官问完一个问题,紧接着说还会其他解决方法吗?能干活解决bug不就行了吗?那还得会多少种方法?”面试官应该是对应聘者的回答不太满意,他想听到一个他认为最优的解决方案,其实这无可厚非。同样一个bug,能用一行代码解决问题的人和用十行代码解决问...原创 2020-02-16 20:35:39 · 423 阅读 · 0 评论 -
包管理原则
坊间传闻java web开发人员写了那么多代码,但是其实一半代码都在处理NPE。总是在加班,却大部分时间都在处理包冲突,类加载不了的bug。这些问题总是让新老程序员都很抓狂,有很多的工具可以辅助我们解决这些问题(maven helper插件,arthas等)但是有没有一些原则可以遵循,在源头上避免这些问题的发生呢。问题经常遇到的问题有ClassNotFoundException通过Clas...原创 2020-02-15 22:31:37 · 127 阅读 · 0 评论 -
Github推出了GitHub CLI
我们正在从命令行-GitHub CLI(现在处于beta版)中引入一种更轻松,更无缝的方式与GitHub一起使用。数以百万计的开发人员依靠GitHub使构建软件更加有趣和协作,并将ghGitHub终端带给你体验。您可以立即在macOS,Windows和Linux上安装GitHub CLI ,并且随着我们对测试版反馈的不断完善,我们还会提供更多功能。安装方式如下:https://cli.git...原创 2020-02-15 22:30:26 · 414 阅读 · 0 评论 -
使用iView遇到的问题和坑
当单选框要绑定 number 类型的数值时,前面要加冒号(:)input 框绑定时要用 v-model,别用官方的 :value.syncForm中的input上加入clearable会在最后面显示一个清空按钮下拉框优化: {{type.label}}typeList: [{value: 1,label: ‘新势力’},{value: 0,label:...原创 2020-02-15 22:28:49 · 831 阅读 · 0 评论 -
为了不复制粘贴,我被逼着学会了JAVA爬虫
受疫情影响一直在家远程办公,公司业务进展的缓慢,老实讲活并没有那么多,每天吃饭、睡觉、逛技术社区、写博客,摸鱼摸得爽的很。早上本来还想在来个回笼觉,突然部门经理的语音消息就过来了,甩给我一个连接地址 www.stats.gov.cn/tjsj/tjbz/t…要我把全国的省市名称和区域代码弄出来,建一个字典表,时限一上午。分下一下需求要全国的省、市名称,建一张字典表进行存储,表结构设计相对容易...原创 2020-02-14 20:52:22 · 304 阅读 · 0 评论 -
你真的懂package.json吗
在Node.js中,模块是一个库或框架,也是一个Node.js项目。Node.js项目遵循模块化的架构,当我们创建了一个Node.js项目,意味着创建了一个模块,这个模块的描述文件,被称为package.json。我之前看别人项目中package.json文件的scripts这样写:“dev”: “rimraf “config/.conf.json” && rimraf “sr...原创 2019-12-06 21:28:06 · 307 阅读 · 1 评论 -
前端防御性编程
一个页面在呈现给用户之前需要经过静态资源加载、后端接口请求和渲染这三个过程,我们要做的就是在各个过程中防御可能出现的异常情况,保持流畅的用户体验,同时还要应对来自外部的攻击。防网络目前主流的研发模式都是前后端分离,拿React举例来说functionApp(){const[data, setData] = useState(null); useEffect(()=>{ (asy...原创 2019-12-06 21:21:20 · 309 阅读 · 0 评论 -
高频使用的 Git 命令
前言汇总下我在项目种高频使用的 git 命令。官方文档肯定比我全面,这里是结合实际业务场景输出。使用的 Git版本:git version 2.24.0命令git log查看日志,常规操作,必备输出概要日志,这条命令等同于git log --pretty=oneline --abbrev-commitgit log --oneline指定最近几个提交可以带上 - + 数字gi...原创 2019-12-05 21:11:21 · 423 阅读 · 0 评论 -
在 iTerm2 中使用 tmux
作为开发者,不断和服务器打交道,最烦躁的是,每次用 ssh 连接服务器时,总担心网络不稳定导致在服务器端执行耗时的任务会被中断。有时候服务器一边在执行命令,一边又想看看服务器内存、CPU 等运行情况,这时候不得不再打开一个终端执行 ssh 连接操作。最近发现一个好工具:「tmux」,恰好能解决这些问题,今天分享出来。首先说一说 tmux 的好处。tmux 优点分屏在 Mac 上,iter...原创 2019-12-05 21:10:17 · 510 阅读 · 0 评论 -
IPv4 地址已耗尽,IPv6 涅槃重生:腾讯云IPv6改造综述
引言:近日,全球 IPv4 地址正式耗尽的消息刷遍各大技术媒体,IPv6 再一次被推到人们面前。IP,作为网络世界的通行证,其重要性不言而喻。IPv4 地址枯竭,IPv6 作为IPv4地址枯竭的解决方案,其在中国的发展历程是怎样的?产品环环相扣的腾讯云,是如何进行大规模 IPv6 改造的?「云加社区」特别策划「IPv6」系列专题,为你揭秘。关注「云加社区」公众号,回复“IP”,获取更多内容。(本文...原创 2019-12-04 20:30:43 · 906 阅读 · 0 评论 -
什么,同一个文本可以设置多种样式?
不知道大家在工作中是否遇到过这种情况,明明就是一个字符串,但是设计师偏让我们显示成不同的样式,具体效果和下图类似 如果你用4个TextView去做的话,只能说可以做,但是代码被别人看到肯定要喷成翔。有人说用Html.fromHtml()方法来将文本刷成html格式,然后通过设置html样式的方式来做。这样不是不可以,首先我们不是很擅长html,其次这种方式提供的效果有限,很容易就卡壳...原创 2019-12-03 19:00:07 · 752 阅读 · 0 评论 -
「前端料包」一文彻底搞懂JavaScript中的this、call、apply和bind
关于JavaScript中this又是一个老生常谈的话题,也是面试绕不开的经典考题。「前端料包」 系列第三篇就一起聊聊关于this的话题。写的很小白,如有不对,欢迎各路大佬指正~在讲this之前,先得说说环境 这个概念。一门语言在运行的时候,需要一个环境,叫做宿主环境。对于JavaScript,宿主环境最常见的是web浏览器,另一个最为常见的就是 Node 了,同样作为宿主环境,node 也有自...原创 2019-12-03 18:59:10 · 158 阅读 · 0 评论 -
同时多个axios请求怎么实现无痛刷新token
最近遇到个需求:前端登录后,后端返回token和refresh_token,当token过期时用旧refresh_token去获取新的token,前端需要做到无痛刷新token,即请求刷新token时要做到用户无感知。需求解析当用户发起一个请求时,判断token是否已过期,若已过期则先调refreshToken接口,拿到新的token后再继续执行之前的请求。这个问题的难点在于:当同时发起多个...原创 2019-11-28 20:33:45 · 562 阅读 · 0 评论 -
从零开始的数据结构 —— 红黑树(6k字总结)
红黑树是一种常见的自平衡二叉查找树,常用于关联数组、字典,在各种语言的底层实现中被广泛应用,Java的TreeMap和TreeSet就是基于红黑树实现的。本篇分享将为读者讲解红黑树的定义、创建和用途。一.红黑树的定义(1)每个节点或者是黑色,或者是红色。(2)根节点是黑色。(3)每个叶子节点是黑色。(4)如果一个节点是红色的,则它的子节点必须是黑色的(5)从任意一个节点到叶子节点,经过的黑色节点是...原创 2019-11-28 20:28:37 · 137 阅读 · 0 评论 -
5行代码带你实现一个js的打字效果
有次看电影????, 看到屏幕上一个个的文字蹦出来, 感觉像是有人在打字一样, 觉得挺有意思, 于是这里也用js实现了一个。项目体验地址: 打字效果体验项目源码地址: 源码地址效果预览最简单的打字效果只要五行代码, 这里直接贴出来:const dom = document.querySelector(’.content’)const data = ‘最简单的打字效果代码’.split(’’...原创 2019-11-28 20:25:12 · 403 阅读 · 0 评论 -
Docker-Compose基础与实战,看这一篇就够了
Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。使用前面介绍的Dockerfile我们很容易定义一个单独的应用容器。然而在日常开发工作中,经常会碰到需要多个容器相互配合来完成某项任务的情况。例如要实现一个 Web 项目,除了 Web 服务容器本身,往往还需要再加上后端的数据库服务容器;再比如在分布式应用一般包含若干个服务,每个服务一般都会部署多个...原创 2019-11-27 21:37:40 · 303 阅读 · 0 评论 -
迈向 serverless 开发的第一步
在本文的第一部分中,我们将讨论设置适合Knative 0.6.0 版的开发环境。第二部分介绍第一个 serverless 微服务的部署。使用 Knative 创建 serverless 应用程序的基本要求是对 Kubernetes 的扎实知识。如果你没有经验,则应该学习官方的基本 Kubernetes 教程[1]。在深入了解之前必须先安装一些工具和程序:Minikube[2]kubectl[...原创 2019-11-27 21:36:30 · 122 阅读 · 0 评论 -
来聊聊前端的异步
异步出现的原因JavaScript语言的执行环境是"单线程"所谓"单线程",就是指一次只能只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。单线程这种模式好处是实现起来比较简单,执行环境单一。坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段JavaScript代码长时间运...原创 2019-11-26 19:58:02 · 458 阅读 · 0 评论 -
初探Tomcat的架构设计
Tomcat 的总体结构中有很多模块,下图列出我们将要进行分析结构中的主要模块。其中主要分析的是Service,Connector,Engine,Host,Context,Wrapper。为避免图层看着太乱,下图中n代表该组件可允许存在多个。如上图所描述的是:Server 是 tomcat 服务器,在 Server 中可以存在多个服务 Service 。每个服务中可有多个连接器和一个 Servl...原创 2019-11-25 22:29:01 · 90 阅读 · 0 评论 -
Swift 5.1 (7) - 闭包
闭包是独立的函数块,可以在代码中传递和使用。Swift中的闭包类似于C和Objective-C中的block以及其他编程语言中的lambdas(匿名函数)。闭包可以捕获和存储上下文中定义的任何常量和变量的引用。全局函数和嵌套函数实际上是闭包的特例。闭包采用以下三种形式之一:全局函数是具有名称但不捕获任何值的闭包。嵌套函数是具有名称并且可以从其封闭函数中捕获值的闭包。Closure表达式是一...原创 2019-11-25 22:27:11 · 198 阅读 · 0 评论 -
给新手前端的✋5段救命css代码(scss mixin)
封装成mixin复用在写????css的时候, 很多样式都是很常用但是写起来很麻烦, 虽然现在有很多成熟的ui框架, 但是我们也不能一个????简单的活动页也引入那么????大个框架吧?在工作中我也攒下了不少常用css, 我把他们封装成了mixin, 挑选了✋5个分享给大家, 希望大家喜欢.https://www.jianshu.com/p/ad509731ee42https://www.jianshu.c...原创 2019-11-23 20:48:46 · 172 阅读 · 0 评论