自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (2)
  • 收藏
  • 关注

转载 超详细的 JS 数组方法整理

数组是 js 中最常用到的数据集合,其内置的方法有很多,熟练掌握这些方法,可以有效的提高我们的工作效率,同时对我们的代码质量也是有很大影响。一、创建数组1.使用数组字面量表示法var arr4 = []; //创建一个空数组var arr5 = [20]; // 创建一个包含1项数据为20的数组var arr6 = ["lily","lucy","Tom"]; // 创建一个包含3个字符串的数组2.使用 Array 构造函数无参构造var arr1 = new Array();

2021-01-26 12:42:01 200

转载 日常Javascript开发技巧,提升代码质量

Javascript 常用代码优化和重构的方法简介主要介绍以下几点:提炼函数合并重复的条件片段把条件分支语句提炼成函数合理使用循环提前让函数退出代替嵌套条件分支传递对象参数代替过长的参数列表少用三目运算符合理使用链式调用分解大型类活用位操作符纯函数本文会不断更新,不足之处欢迎补充。1. 提炼函数好处:避免出现超大函数。独立出来的函数有助于代码复用。独立出来的函数更容易被覆写。独立出来的函数如果拥有一个良好的命名,它本身就起到了注释的作用。语义化将多段分离的逻辑放在不

2021-01-25 15:06:27 202 3

转载 ECMAScript 6 的Map映射

映射(Map)是 ECMAScript 6 规范中引入的一种数据结构。这是一种存储键值对列表很方便的方法,类似于其他编程语言中的词典或者哈希表。什么是映射JavaScript 的对象(Object),本质上是键值对的集合(Hash结构),但是传统上只能用字符串当作键,这给使用带来了很大的限制。为了解决这个问题,ECMAScript 6 引入了 Map 数据结构。它类似于对象,也是键值对的集合,但是"键"的范围不仅仅局限于字符串,而是各种类型的值(包括对象)都可以当作键。也就是说,Object 结构(

2021-01-25 14:08:30 178

原创 一维数组转换成相应长度的二维数组

let oldList = [0,1,2,3,4,5,6,7];let list = [];let size = 3;for (let i = 0; i < oldList.length; i += size) { list.push(oldList.slice(i, i + size));}

2020-07-14 14:29:17 241

原创 微信小程序 npm 引入 weui-wxss

1、打开cmd,在小程序的根目录,初始化npmnpm init name 项目名称;version 项目的版本号;description 项目的描述信息;entry point 项目的入口文件; test command 项目启动时脚本命令(npm test);git repository Git 地址 keywords 关键词;author 作者;license 项目...

2020-02-05 14:43:54 1761

原创 小程序 .wxs文件 时间进行转换(常用的粘贴复制)

var time = { ymd: function (timestamp) { var date = getDate(timestamp * 1000); //时间戳为10位需*1000 var Y = date.getFullYear() + '-'; var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMo...

2020-01-19 11:32:27 847

原创 Gitlab权限问题

Gitlab用户在组中有五种权限:Guest、Reporter、Developer、Master、OwnerGitlab权限管理Gitlab用户在组中有五种权限:Guest、Reporter、Developer、Master、OwnerGuest:可以创建issue、发表评论,不能读写版本库Reporter:可以克隆代码,不能提交,QA、PM可以赋予这个权限Develop...

2019-11-12 10:02:25 592

原创 判断一个字符串中出现的次数最多的字符,统计这个次数

var str = 'abcdefghimnostuvwistuvwsyzabcdeft';var json = {};for(var i = 0; i < str.length; i++){ if(!json[str.charAt(i)]){ json[str.charAt(i)] = 1; }else{ json[str.charAt(i)]...

2019-09-26 15:16:01 279

原创 算法基础(数组去重)

请用js去掉数组中的重复值,比如把[1,3,3,2,5,1,5,3]变成[1,3,2,5]。var arr = [1,3,3,2,5,1,5,3];var arr1 = [];for(var i = 0;i < arr.length; i++){ if(arr1.indexOf(arr[i]) < 0){ arr1.push(arr[i]) }}co...

2019-09-26 10:48:55 145

原创 让前端基础笔试更优秀(腾讯)

1.var str = "abc123";var num = parseInt(str);if(num == NaN){ alert(NaN);}else if(num == 123){ alert(123);}else if(typeof num == 'number'){ alert("number")}else{ alert("str");}2.va...

2019-09-24 17:10:13 149

原创 让前端基础笔试更优秀(360)

1.window.val = 1;var json = { val:10, dbl:function(){ this.val*=2; }}json.dbl();var dbl = json.dbl;dbl();json.dbl.call(window);alert(window.val + json.val);2.(function(){ ...

2019-09-20 15:16:54 141

原创 让前端基础笔试更优秀(阿里)

1.如何实现一个不定高度的元素的水平垂直居中?2.跨域请求数据的方法都有哪些?3.写出你知道的css的选择器?4.编写一个类和类继承,类名为Person,含有属性name,age,含有方法sayHello。 编写一个Student类,继承自Person,自有属性score,自有方法study。5.分析代码的运行结果?for(var i=0;i<5;i++){ ...

2019-09-20 11:06:09 118

原创 微信小程序登陆,出现400问题

在测试账号下,登陆是错误的,报错400,请使用正式的appid账号

2019-07-23 20:37:32 560

转载 Vue 实现前进刷新,后退不刷新的效果

需求一:在一个列表页中,第一次进入的时候,请求获取数据。点击某个列表项,跳到详情页,再从详情页后退回到列表页时,不刷新。也就是说从其他页面进到列表页,需要刷新获取数据,从详情页返回到列表页时不要刷新。解决方案在App.vue设置:<keep-alive include="list"> <router-view/></keep-ali...

2019-06-14 10:57:46 98

原创 基础算法(快速排序)

function quicksort (arr){ if(arr.length<=1){ return arr; } var left = []; var right = []; var middle = arr[0]; for(var i=1;i<arr.length;i++){ if...

2019-04-30 10:57:09 105

原创 数组循环 ES5新增方法

1. arr.forEach() // 代替for 循环let arr = ['1','2','3','4','5'];arr.forEach(function(val,index,arr){ console.log(val,index,arr);});2. arr.map() //做数据交互,映射正常情况下,需要配合return,返回一个新的数组,若没有相当于f...

2019-04-14 16:38:10 173

原创 微信小程序穿透遮罩层仍能滚动问题

wxml文件<!-- 遮罩层开始 --><view class="shade" catchtouchmove="move" bindtap='closeSelect'></view><!-- 遮罩层结束 -->catchtouchmove="move" 事件js文件// 遮罩成滑动问题开始move() {}...

2019-04-13 15:06:53 1722

原创 字符串填充

console.log('a'.padStart(4,'XXX'))1.向前填充let str='apple';let pasStr='xxx';str.padStart(str.length+pasStr.length,pasStr) // "xxxapple"2.向后填充let str='apple';let pasStr='xxx';s...

2019-04-13 14:21:24 1906

原创 检测字符串内容的常用方法

str.startsWith(http); //字符串是否http开头 str.endsWith(png); //字符串是否png结尾 str.repeat(次数); //重复字符串

2019-04-13 14:03:16 1106

转载 js 基本类型与引用类型的区别

ECMAScirpt 变量有两种不同的数据类型:基本类型,引用类型。也有其他的叫法,比如原始类型和对象类型,拥有方法的类型和不能拥有方法的类型,还可以分为可变类型和不可变类型,其实这些叫法都是依据这两种的类型特点来命名的1.基本类型基本的数据类型有:undefined,boolean,number,string,null.基本类型的访问是按值访问的,就是说你可以操作保存在变...

2019-04-10 16:06:18 146

转载 前端面试知识点目录整理

基本功考察1.关于Html1、html语义化标签的理解、结构化的理解;能否写出简洁的html结构;SEO优化。2、h5中新增的属性,如自定义属性data、类名className等;新增表单元素;拖拽Drag。3、h5中新增的API、修改的API、废弃的API稍作了解(离线存储、audio、video)。2.关于CSS1、CSS选择器(三大特性)。2、BFC机制。3、...

2019-04-01 10:29:11 159 1

原创 react 运用 fetch 请求数据

componentDidMount(){ fetch('服务器接口').then(res=>{ if(res.ok){ res.json().then(data=>{ this.setState({ data //ES6语法 }) }) ...

2019-03-26 22:13:53 693

原创 使用create-react-app创建项目结构

在终端输入npx create-react-app my-order //my-order 是创建项目的名字如果下载速度比较慢 也可以下载淘宝的镜像源启动命令npm start

2019-03-26 18:28:33 317

原创 react 开发 vscode需要安装的开发插件

1.npm Intellisense有自动补全的功能 var lodash = require('lodash')2. path Intellisense自动补全文件名import CityAction from "../../../store/main/cityAction.js";3. Prettier-Code formatter做代码格式化4.Re...

2019-03-26 17:22:13 4237

转载 JavaScript面试

JavaScript 面试不容易。我觉得难,你也觉得不容易,大家的意见不谋而合。在 JavaScript 面试中被问问题的概率通常很高。那么该如何破解 JS 面试?突破口在哪儿?本文旨在通过学习基本概念来指导所有有志向的 JavaScript 开发者加深他们的 JS 知识。以下为译文:应对 JS 面试,本文至少算是必备常识。如果我是候选人,我会争取很好地掌握这些概念。如果我是面试...

2019-03-22 14:19:24 1202

转载 js数组 面试题

ES6 去重Array.from(new Set([1,2,3,4,5,4,3,2]))[...new Set([1,2,3,4,5,4,3,2])]//[1, 2, 3, 4, 5]排序[1,2,2,3,4,3,5,1].sort()//[1, 1, 2, 2, 3, 3, 4, 5][1,2,2,3,4,3,5,1].sort((a,b)=>b-a...

2019-03-20 17:28:15 2563

原创 Promise 实现队列

实现队列有时候我们不希望所有动作一起发生,而是按照一定顺序,逐个进行。let promise=doSomething();promise = promise.then(dosomethingElse);promise = promise.then(dosomethingElse);promise = promise.then(dosomethingElse);......使用...

2019-03-12 11:47:07 1393 1

原创 Promise.all() 和 .map()连用

查找最大文件const FileSystem=require('./FilesSystem');function(){ return FileSystem.readDir(dir,'utf-8') .then(files=&gt;{ return Promise.all(files.map(file=&gt;{ return new ...

2019-03-12 11:08:28 5280

原创 Promise.all()

批量执行Promise.all([p1,p2,p3,...])用于将多个Promise实例,包装成一个新的promise 实例。返回的实例就是普通Promise他接受一个数组作为参数数组里可以是Promise对象,也可以是别的值,只有Promise会等待状态改变。当所有的子Promise都完成,该Promise完成,返回值是全部值德 数组有任何一个失败,该promise失败...

2019-03-12 10:35:41 152 1

原创 Promise 错误和then连用

console.log('here we go')new Promise(resolve=&gt;{ setTimeout(()=&gt;{ resolve(); },1000)}) .then(()=&gt;{ console.log('start'); throw new Error('test error') }).catch(er...

2019-03-11 17:05:41 3371

原创 Promise 错误处理

Promise 会自动捕获内部异常,并交给rejected响应函数处理。console.log('here we go');new Promise(resolve=&gt;{ setTimeout(()=&gt;{ throw new Error('bye'); },2000)}) .then(value=&gt;{ console.log(v...

2019-03-11 16:47:50 1833

原创 Promise then的嵌套

.then() 里边有 .then()的情况因为 .then()返回的还是promise实例,会等里面的 .then()执行完,在执行外边的对于我们来说,此时最好将其展开,阅读体验更好,console.log('start')new Promise(resolve=&gt;{ console.log('Step 1') setTimeout(()=&gt;{ ...

2019-03-09 16:51:37 1996

原创 Promise 引出 .then()

.then() 接受两个函数作为参数,分别代表fulfilled和rejected.then() 返回一个新的Promise实例,所以他可以链式调用当前面的Promise状态改变时,.then()根据其最终状态,选择特定的状态响应函数执行状态响应函数可以返回新的Promise,或其它值如果返回新的Promise,那么下一级 .then()会在新的Promise状态改变之后执行...

2019-03-09 16:11:23 223

原创 then里不返回Promise

console.log('here we go')new Promise(resolve=&gt;{ setTimeout(()=&gt;{ resolve('hello') },2000);}) .then(value=&gt;{ console.log(value) console.log('everyone'); ...

2019-03-09 15:56:03 1344

原创 对已完成的Promise执行then 查看效果

console.log("start")let promise=new Promise(resolve=&gt;{ setTimeout(()=&gt;{ console.log('the promise fulfilled') resolve('hello,wrold'); },1000) })setTi...

2019-03-09 15:38:03 623

原创 Pormise 的简单的实例

console.log('here wo go')new Promise(resolve=&gt;{ setTimeout(()=&gt;{ resolve('hello'); },2000)}) .then(value=&gt;{ console.log(value + 'world') })实例2console.log(...

2019-03-09 15:16:01 3100

原创 Promise介绍

new Promise( // 执行器 executor function(resole,reject){ //一段耗时很长的异步操作 resolve(); //数据处理完成 reject(); //数据处理错误 }) .then(function A(){ //成功,下一步 },func...

2019-03-09 14:55:56 111

原创 回调会出现的问题

1.嵌套层次很深,难以维护2.无法正常使用return和throw3.无法正常检索堆栈信息4.多个回调之间难以建立联系

2019-03-09 14:30:52 205

原创 a 标签 target 窗口打开方式

1. &lt;a target="_self"&gt; &lt;/a&gt;在当前的窗口打开2.&lt;a target="_blank"&gt; &lt;/a&gt;在新的窗口打开

2019-02-22 10:18:16 4996

原创 a 标签 href

1. &lt;a href="#"&gt; &lt;a/&gt;污染网页链接,刷新页面2.&lt;a href="###"&gt; &lt;/a&gt;污染网页链接3.&lt;a href="javascrip.void(0);"&gt; &lt;/a&gt;不会刷新网页,不会污染网页链接...

2019-02-21 17:57:12 1134

es6-promise(微信小程序等引用)

使用方法如下: const Promise = require("../es6-promise.js"); 即可创建 ,new Promise()

2019-03-09

破解Sourcetree注册

1、将accounts.json 直接放在 C:\Users\你的用户\AppData\Local\Atlassian\SourceTree 目录下 2、重新打开sourcetree 就会跳过注册了, 3、选择我不想使用 mercurial 4.打开SourceTree.exe_Url_#####/3.1.2.3027/user.config文件 添加: 20160201 ok!!

2018-11-21

空空如也

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

TA关注的人

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