- 博客(49)
- 资源 (8)
- 收藏
- 关注
原创 高级前端进阶:01讲,JS数据类型说明、内存理解以及常见的面试考点
JS的数据类型和面试考点JS的数据类型基本数据类型引用类型区别内存存储面试点typeof 检测数据类型JS的数据类型基本数据类型string、boolean、number、null、undefined、Symbol引用类型Object、Array、RegExp、Date、Function区别引用类型值可添加属性和方法,而基本类型值则不可以。内存存储基本类型基本类型的变量是存放在栈内存(Stack)里的基本数据类型的值是按值访问的基本类型的值是不可变的基本类型的比较是它
2020-06-16 12:59:44 289 1
原创 Vue 3.0 尝鲜快速进阶
在 2019 年发布了 Vue 3.0 预览版源码,预计 2020 年年末会发布 3.0 正式版。新版 Vue 3.0 计划并已实现的主要架构改进和新功能:- 编译器(Compiler) - 使用模块化架构 - 优化 "Block tree" - 更激进的 static tree hoisting 功能 (检测静态语法,进行提升) - 支持 Source map - 内置标识符前缀(又名&a...
2020-05-25 17:00:24 485
原创 JavaScript面试题 最后一个单词的长度
给定一个仅包含大小写字母和空格 ' ' 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。如果不存在最后一个单词,请返回 0 。说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。示例:输入: "Hello World"输出: 5这个就很简单了,相信很多人都会。varlengthOfLastWord...
2020-04-13 17:16:27 356
原创 JavaScript算法题难度10 接雨水
给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。打开UC浏览器 查看更多精彩图片上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 感谢 Marcos 贡献此图。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6...
2020-04-07 17:00:00 336
原创 JavaScript面试题 计算无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最...
2020-04-06 14:52:12 429
原创 JS生成斐波拉契数列算法
斐波那契数列指的是这样一个数列:这个数列从第3项开始,每一项都等于前两项之和。算法如下:function fn(m){ if(m==1||m==2){ return 1 } return fn(m-1)+fn(m-2);}var arr = [];for(var i=1;i<=10;i++){arr.push(fn(i));...
2020-03-20 12:59:13 197
原创 中高级前端面试知识点汇总
1.1、什么是HTML语义化?有什么好处?根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读和写出更优雅的代码的同时让浏览器的爬虫和机器很好地解析。为了在没有 CSS 的情况下,页面也能呈现出很好地内容结构、代码结构:为了裸奔时好看;用户体验:例如 title、alt 用于解释名词或解释图片信息、label标签的活用;有利于 SEO:和搜索引擎建立良好沟通,有助...
2019-08-29 09:52:12 1634
原创 开发一个基于 Vue2.0 的个人天气预报
本场 Chat 是一个基于 Vue 的个人天气预报项目,就是兴趣所致,做来玩玩。顺便扩展一下知识面。本项目会采用高德地图 API,Echarts 可视化库和 Vue 相关的技术来开发本项目。有兴趣的同学,可以一起来玩玩。本场 Chat 你将学到如下内容:学会制作自己的天气预报; 学会使用部分高德地图的 API; 学会使用 Echarts的部分 API; Vue+Webpack 相...
2019-07-05 11:55:45 2256
原创 Vue+Better-Scroll 实现多Tab上拉加载更多实例
本场 Chat 是讲一个基于 Vue+Better-Scroll 实现多 Tab 切换上拉加载更多的实例,像这种多 Tab 切换加载更多的场景,不管在 PC 端还是移动端都还挺常见的,比如商城类,订单中心等。本人在项目中也经常用这种,已经轻车熟路了,所以就想做个总结出来,并做成一个实例 Demo,把经验分享出来,供同样有所需的前端同学学习。本项目使用 Vue 和 Better-Scroll 相...
2019-07-05 11:40:22 815
原创 Javascript面试题 把AaaBbbcccc 变成AaaBbbCcc
这个是一个面试题,要求把一个字符串AaaBbbcccc变成AaaBbbCcc。写一个通用的函数:我的代码实现如下:function handle(txt){ let arr = txt.split(""); let t = arr[0].toUpperCase(),newArr = []; for(let i in arr){ if(t == arr...
2019-04-11 09:38:20 959
原创 vue webpack项目打包优化,从60s到17s的优化之路
下面就进入本文的正题了:对本文感兴趣的,想必都有一定的开发经验了,对webpack工具也有了一定的了解。只是在webpack生态里面有太多的插件了,除了默认推荐的插件之外,不知道怎么找更好用的插件,其实当初,我也有和你一样的困惑,只是我喜欢钻研,喜欢尝试。基于webpack的项目啦都有一个弊端,项目体积越大,打包耗时越长。下面就把我优化项目的案例展示给你。激动么~~~Vue项目比较大.或...
2019-03-07 17:51:32 5570 1
原创 仿美团城市选择器的 Vue 插件开发实例
本文是讲一个基于 Vue 的仿美团城市选择器的插件开发实例,目前关于城市选择器的插件比较少,在自己做项目的时候一直没有找到合适的城市选择器插件,所以自己开发了一个。同时也想把这个插件分享给出来,供同样有所需的前端同学学习使用。本项目使用 Vue 和 Vue 插件相关的技术来开发本项目。通过学习本项目,不仅可以拥有自己的城市选择器插件,还可以学到 Vue 插件的开发过程以及 NPM 发布包的相关...
2019-01-13 12:02:54 4770
原创 Node.js+MySQL+Vue 的全栈实战项目:星辰笔记
本项目是一个基于 Node.js 的全栈是实战项目,目标就是带领读者朋友上手实战。众所周知全栈工程师是要比纯前端有发展前景的,非常希望本篇文章能给朋友们带来一些收获。该实战项目主要有首页、登陆、注册、笔记分类,笔记列表,笔记详情,发布笔记和个人主页八个部分。项目虽小,五脏俱全,设计的知识面还是比较全面的。相信通过学习本场 Chat,看完本篇文章并自己跟着认真做过一遍的同学,一定会对全栈知识...
2018-12-18 10:27:11 8806 1
原创 vue+webpack项目打包优化,从60s到17s的优化之法
有的 Vue 项目比较大.或者说项目中引入了许多第三方库,那么在执行 npm run build 构建项目的时候会极其的慢.比如我现在的项目就每次打包就要大概60s的样子。可能大家也会遇到如下同样的问题: 一,npm run build 构建项目耗时较长 二,打包出来的文件太大 三,打包前需要手动删除dist文件 通过学习本文,以上这些都不是问题。 通过学习本文,你讲学会如何优化自己的项目。 通过...
2018-11-15 17:01:00 855
原创 vue+better-scroll实现多tab选项卡上拉加载更多的实践例子
闲话少说,先上效果项目中会经常遇到类似这样的多tab切换的需求,tab可以点击,可以滑动。每个tab的内容还需要上拉加载刷新。没有办法,好好研究一下,做个记录。以防来日不时之需。还有对vue不熟悉的,可以先去看看这个vue+webpack 从入门到精通(基础篇)项目中上拉加载用到了很好用的工具better-scroll,各位可能都知道。关于better-scroll详细的...
2018-09-30 14:23:09 4212 1
原创 vue项目打包后首页一片空白解决办法和具体原因总结
很高兴在万千文章中你看到本章,希望能为你解决问题!!!在最初用vue+webpack+vue-router做项目的时候,在本地pc开发测试都是正常的,但是在把代码打包部署到测试服务器之后,访问项目首页总是白屏。第一种,打包后的dist目录下的文件引用路径不对,会因找不到文件而报错导致白屏。解决办法:修改一下config下面的index.js中bulid模块导出的路径。因为index.h...
2018-08-20 19:47:03 35558 15
转载 Node.js安装及环境配置之Windows篇
Node.js安装及环境配置之Windows篇 一、安装环境1、本机系统:Windows 10 Pro(64位)2、Node.js:v6.9.2LTS(64位)二、安装Node.js步骤1、下载对应你系统的Node.js版本:https://nodejs.org/en/download/2、选安装目录进行安装3、环境配置4、测试三、前期准备1、Node.js简介...
2018-08-19 15:53:26 360
原创 flex弹性布局的属性和属性值详解
一、Flex布局是什么?Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。任何一个容器都可以指定为Flex布局。.box{ display: flex;}行内元素也可以使用Flex布局。.box{ display: inline-flex;}Webkit内核的浏览器,必须加上-webkit前缀。.box{ ...
2018-08-01 18:00:12 3830
原创 如何做前端缓存,防止内存溢出,npm-storage短小精悍的前端缓存插件
一,先介绍一下前端常用的几种缓存1.Cookiecookie是比较老的前端缓存技术了,它的特点是想要使用它前端必须要有服务(静态网页是不行的),而且存储大小限制在4kb。那么为什么必须要有服务才能使用cookie呢?因为只要有请求涉及cookie,cookie就要在服务器和浏览器之间来回传送,而且由于浏览器的跨域限制,客户端和服务端必须要保证同源的原则(也就是跨域问题,详情见我的其他文章)...
2018-07-27 02:18:41 2436 3
原创 windows下生成github ssh key教程
一、引子:什么是ssh:ssh是Secure Shell(安全外壳协议)的缩写,建立在应用层和传输层基础上的安全协议。为了便于访问github,要生成ssh公钥,这样就不用每一次访问github都要输入用户名和密码。二、生成条件:请在github上先注册账号,本地安装git。三、生成步骤:1、本地成功安装了git后,单击鼠标右键,选择Git Bush here,打开git bu...
2018-07-22 12:35:29 744
原创 vue+axios全局注册环境变量和全局接口拦截黑科技
axios 用了有一段时间了,可能对于刚入手的同学来说,和vue-resource没啥区别。但是有没有相关,为啥那么多人喜欢用axios,而不用vue-resource啦。axios有很多的黑科技,比如全局注册变量,全局拦截等等,对于开发来说,可以节省很多事儿!!!一、安装axios老规矩,要想使用axios,我们得安装它,安装方式:npm install axios --save二,...
2018-07-18 12:56:40 3669 1
原创 vue+webpack把px转化成rem的实战例子
第一,首先需要本地安装node环境和配置。第二,npm全局安装vue-cli。第三,通过vue的脚手架初始化本地项目vue init webapck project-name这里会自动安装基础依赖,先npn run dev一下,是否运行正常!第四,安装 npm install postcss-px2rem postcss postcss-loader--save 第...
2018-07-17 12:05:58 3313 2
原创 vue项目如何全局注册过滤器(filter)
前言:一个vue项目中难免会遇到一些地方需要用到filter,那么怎么写,才能在各个组件中肆意使用啦.一,在static目录下新建一个filter目录,在filter目录下创建一个filter.js文件这里举一个给商品价格精确不足两位的补0,比如22.2->22.20,22->22.00看代码:/** * 给商品价格加补0 * @param {*} value */const add...
2018-06-22 10:14:52 8011
原创 把一个有序整数数组放到二叉树平均搜索树
前沿:有这样一个需求,一个整数数组[1,2,3,4,5,6,7,8,9,10,11],需要生成这样的树形结构。 6 3 9 1 4 7 ...
2018-05-18 09:55:57 274
原创 vue 插件开发教程与发布
前言对于插件的好处就不用多说了~~~~看了vue官方的vue插件开发的文档,讲的比较粗略,看完一头雾水的,所以决定自己研究开发了一个组件,并写成一个教程。就拿基于vue的一个toast组件开始吧项目初始化封装vue的插件用webpack-simple很合适,vue init webpack-simple project-name此命令创建我们的项目的目录,创建文件夹和文件,最后结构是这样的lib目...
2018-04-16 00:04:13 3603
原创 vue+webpack 从入门到精通(二)
还对vue+webpack不熟悉的同学,请走这边:vue-cli+webpack 从入门到精通(基础篇)这篇正式进入主题了,先来个数据渲染。在vue中渲染数据很方便,这也是喜欢vue的原因之一。准备工作-———1.首先在根目录下新建一个data.json文件2.在components目录下新建一个组件ElmIndex.vue(组件名字随便取)3.在router下的index.js文件中给新建的El...
2018-04-14 20:07:01 4648
原创 vue+webpack 从入门到精通(基础篇)
所谓工欲善其事必先利其器,众所周知vue+webpack的开发需要本地安装node环境(有还不知道的就先去知道知道再来看本博的文章吧)。一、nodejs下载,安装和配置本地环境,就自己百度一下,网上有很多的文章,此处就不再赘述。二、全局安装vue 的脚手架工具vue-cli。npm install -g @vue/cli三、全局安装webpack。npm install -g webpack四、到...
2018-04-05 23:17:30 4259 3
原创 JS维护nginx反向代理,妈妈再也不用担心我跨域了!
一些废话(直接看代码的可跳过)“跨域了,咋搞啊!”“问你自己啊,我们后台不配合解决的。”“你们写几句话就好了啊,cors、jsonp、header ......”“搞不来!不合法!不安全!......”“卧槽,这接口又跨域了,我CNMLGB”“你TM不会自己url-get、form-post、写nginx代理啊!”......几个月后“这接口跨域了!”“写反向代理啊,上次你不是弄过吗?”“我TM...
2017-12-29 11:00:39 943
原创 一稿设计多端适配优雅的解决方案 - rem
为提高前端团队开发效率,输出高质量的前端页面代码,提高UI设计还原度,特编写该规范文档。本文档如有不对或者不合适的地方请及时提出。JS代码块(function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? 'orientati
2017-12-29 10:53:09 1405
原创 浅谈Async/Await
概要在很长一段时间里面,FE们不得不依靠回调来处理异步代码。使用回调的结果是,代码变得很纠结,不便于理解与维护,值得庆幸的是Promise带来了.then(),让代码变得井然有序,便于管理。于是我们大量使用,代替了原来的回调方式。但是不存在一种方法可以让当前的执行流程阻塞直到promise完成。JS里面,我们无法直接原地等promise完成,唯一可以用于提前计划promise完成后的执行逻
2017-12-29 10:50:27 2029
原创 你所不知道的JSON.parse() 和 JSON.stringify() – 高级用法
JSON对象的两个方法:JSON.parse() 和 JSON.stringify() 通常用做JSON对象和字符串之间的相互转换,这里不再详细介绍,你可以查看这篇文章: http://www.css88.com/archives/3919 。这里介绍一下,我主要介绍一下 JSON.parse() 和 JSON.stringify() 的高级用法,可以在实际应用中给我们带来一些方便。JSON.par
2017-12-29 10:45:27 4286
原创 2017下半年优质文章合集:前端篇
2017年马上就要结束了,拖延症绝不拖到明年!这就给大家整理出来——2017下半年优质小报合集。CSS/页面布局border属性的多方位应用和实现自适应三角形BEM实战之扒一扒淘票票页面一劳永逸的搞定 flex 布局20个CSS高级技巧汇总从a标签为什么不能包含div标签-了解HTML5元素分类与内容模型聊聊为什么淘宝要提出「双飞翼」布局前端切图 | 百
2017-12-29 10:40:40 1757
原创 iphoneX 前端两种适配方案
方案一: 为适应于iphoneX的齐刘海,ios11的WebView Viewport对于顶部做了调整。 iphoneXViewport 手机浏览器是把页面放在一个虚拟的“窗口”(viewport)中,通常这个虚拟的“窗口”(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页布局),用户可以通过平移和缩放来看网页的不同部分。移动版Safar
2017-12-29 10:13:34 12698 2
原创 vue+webpack项目中px2rem的例子
引言:gitchat里有更详细的实战例子Vue+Webpack 把 PX 转化成 REM 的实战例子 本文重点:项目环境搭建此处省略,不再赘述,需要的请查阅相关资料。本篇只介绍,如果在vue+webpack的项目中配置,把px自动转为rem 第一步安装 npm install postcss-px2rem postcss --save 第...
2017-12-07 14:26:28 14016 9
原创 简单聊聊Javascript面向对象(-)
在平时的开发中,为了减少多的全局变量和函数,采用面向对象的方式,并且面向对象的编程方法,可以使代码逻辑清晰,代码整洁。不说了,直接看代码:var Obj=function(name,age){this.name=name;this.age=age;}Obj.prototype={say:function(){ console.log("我的名字是"+this
2017-11-01 15:34:03 392
原创 移动端实现1px的边框
众所周知,在移动端1px比实际的1px的要粗,那么怎么才能在移动端实现1px的边框啦??看到这里,不知道有没有童鞋想到css3的一个属性,缩放 ,没错,就是缩放 !!还有一个重要那就是伪元素::after主要是css代码如下:.border::after{ content: ''; position: absolute; top: 0; left:
2017-11-01 11:10:40 467
转载 node环境变量配置,npm环境变量配置
原文地址:https://blog.csdn.net/jianleking/article/details/79130667
2018-07-30 14:48:07 1257
原创 javascript求一个字符串中字母最多的算法
var attr="asdasaasakjshdjnkashdaksndkasnklnaslfdjalsfaslnfkhjiaudshfkasndkalsmnfalksfjnkasdhnaf"; function mount(attr){ var obj={}; var max=0, maxValue=""; for(var i=0;i<attr.length;i++){ if(obj....
2018-04-20 00:04:32 219
原创 缩小浏览器窗口延迟执行代码
var n=0;function rhander(){console.log(new Date().getTime());console.log(++n)} function throttle(md,ctx){clearTimeout(md.tId);md.tId=setTimeout(function(){md.call(ctx)},500)} window.onresize=functio
2016-07-25 11:43:39 364
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人