自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 1024,愿一切顺利

祈求事事顺利吧

2019-10-24 13:32:50 2003

原创 leetcode题解(十四)--缺失的第一个正数

给定一个未排序的整数数组,找出其中没有出现的最小的正整数。示例1:输入: [1,2,0]输出: 3示例2:输入: [3,4,-1,1]输出: 2示例3:输入: [7,8,9,11,12]输出: 1 let firstMissNum = (arr) => { arr = arr.filter((item) => item &g...

2019-10-17 08:57:04 2044

原创 leetcode题解(十三)--数组中的第K个最大元素

在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4 let maxLastNum = (arr, k) => { for (l...

2019-10-16 23:10:21 2027 1

原创 leetcode题解(十二)--最大间距

给定一个无序的数组,找出数组在排序之后,相邻元素之间最大的差值。如果数组元素个数小于 2,则返回 0。示例1:输入: [3,6,9,1]输出: 3解释: 排序后的数组是 [1,3,6,9], 其中相邻元素 (3,6) 和 (6,9) 之间都存在最大差值 3。示例2:输入: [10]输出: 0解释: 数组元素个数小于 2,因此返回 0。 let maxSiz...

2019-10-16 22:36:26 1966

原创 leetcode题解(十一)--按奇偶排序数组 II

给定一个非负整数数组A, A 中一半整数是奇数,一半整数是偶数。对数组进行排序,以便当A[i] 为奇数时,i也是奇数;当A[i]为偶数时, i 也是偶数。你可以返回任何满足上述条件的数组作为答案。示例:输入:[4,2,5,7]输出:[4,5,2,7]解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。 let sortArr...

2019-10-16 22:25:09 2083

原创 选择排序

寻找最小的数,然后放到遍历的位置let arrSort = (arr) => { let min; for (let i = 0; i < arr.length; i++) { min = arr[i] for (let j = i + 1; j < arr.length; j++) { if (arr[j] < min) { ...

2019-10-16 21:38:01 493

原创 冒泡排序

循环对比两个数字的大小,若后者比前者大,两者交换let arrSort = (arr) => { for (let i = arr.length - 1; i > 0; i--) { for (let j = 0; j < i; j++) { if (arr[j] > arr[j + 1]) { [arr[j], arr[...

2019-10-16 21:13:36 483

原创 for...in和for...of的应用

简而言之for...in更适用于对象的遍历for...of更适用于数组的遍历for...in语句以任意顺序迭代对象的可枚举属性。for...of语句遍历可迭代对象定义要迭代的数据。...

2019-10-16 20:41:27 736

原创 js函数的多种方式

在ES2018中,函数已经是一个很复杂的体系了,整理一下第一种,普通函数:用function关键字定义的函数。示例:function foo(){ // code}第二种,箭头函数:用 => 运算符定义的函数。示例:const foo = () => { // code}第三种,方法:在class中定义的函数。示例:cla...

2019-10-10 20:41:02 658

原创 cookies,sessionStorage 和 localStorage 的区别

cookie是网站为了标示用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。cookie数据始终在同源的http请求中携带(即使不需要),记会在浏览器和服务器间来回传递。sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。存储大小:cookie数据大小不能超过4k。sessionStorage和localS...

2019-10-09 22:15:48 483

原创 get与post的理解及区别

GET: 从指定的资源请求数据POST: 向指定的资源提交要被处理的数据GET和POST的区别GET 请求可被缓存GET 请求保留在浏览器历史记录中GET 请求可被收藏为书签GET 请求不应在处理敏感数据时使用GET 请求有长度限制(2048字符),IE和Safari浏览器限制2k;Opera限制4k;Firefox,Chrome限制8kGET 请求只应当用于取回数...

2019-10-09 22:12:22 600

原创 angularjs input使用ng-model双向绑定无效问题

在开发中有时在input上使用ng-model进行双向绑定时一直不生效的问题<input type="type" ng-model="inputText"/>$scope.inputText = 123;console.log($scope.inputText)//undefined而修改变量为<input type="type" ng-model="m...

2019-10-09 21:34:45 3297 1

原创 JavaScript 数组常用方法(二)

如何截取数组中指定范围内容 如何查找元素在数组中的位置 如何判断数组中是否包含某个元素 如何把字符串转换为数组如何截取数组中指定范围内容arr.slice(1, 3) let arr = [1, 3, 5, 7, 9]; let res = arr.slice(1, 3); console.log(arr); //[1, 3, 5, 7, 9] ...

2019-10-09 00:04:35 533

原创 JavaScript 数组常用方法(一)

如何清空数组 如何将数组转换为字符串 如何将数组转换为指定格式字符串 如何将两个数组拼接为一个数组 如何对数组汇总的内容进行反转如何清空数组arr = [] let arr = [1,2,3,4,5]; arr = []; console.log(arr); //[]arr.length = 0 let arr = [1,2,3,4,5...

2019-10-08 23:58:55 592

原创 es6-认识Map

Map对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。Map.prototype.get(key)返回键对应的值,如果不存在,则返回undefined。Map.prototype.set(key, value)设置Map对象中键的值。返回该Map对象。let map = new Map();map.set('title', 'ECMA 2019');...

2019-10-08 23:46:12 581

原创 es6-认识Set

Set对象是值的集合,你可以按照插入的顺序迭代它的元素。 Set中的元素只会出现一次,即 Set 中的元素是唯一的。Set.prototype.size返回Set对象的值的个数。let set = new Set();set.add(5);set.add('5');set.add(5);console.log(set.size); // 2Set.prototype.a...

2019-10-08 23:30:57 538

原创 es6-对象和数组解构

我们经常需要在对象和数组内提取相关的数据,往往我们需要遍历才能完成。而在es6添加了简化这种任务的新特性:解构。解构是一种打破数据解构,将其拆分成更小部分的过程。对象解构基本用法:let node = { type: 'Identifier', name: 'foo'};let { type, name } = node;console.log(type, name...

2019-10-08 22:54:48 677

原创 leetcode题解(十)--种花问题

假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花),和一个数n。能否在不打破种植规则的情况下种入n朵花?能则返回True,不能则返回False。示例 1:输入: flowerbed = [1,0,0,0,1], n = 1输出:...

2019-10-01 17:41:49 988

原创 leetcode题解(九)--电话号码的字母组合

给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].说明:尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。 var letterCom...

2019-10-01 15:33:41 669

原创 常见的Request Header和Response Header

Request HeaderAccept 浏览器端接收的格式 Accept-Encoding 浏览器端接收的编码方式 Accept-Language 浏览器端接收的语言类型,用于服务器判断多语言 Cache-Control 控制缓存的时效性 Connection 连接方式,如果是keep-alive,且服务端支持,则会复用连接 Host ...

2019-10-01 00:58:01 1900

原创 JS 常用的字符串方法及使用方式

concat(v1,v2..)concat() 方法用于连接两个或多个字符串,此方法不改变现有的字符串,返回拼接后的新的字符串。//concat(v1, v2,..)var message="Sam"var final=message.concat(" is a"," hopeless romantic.")//alerts "Sam is a hopeless romantic....

2019-10-01 00:40:58 555

原创 数组去重的方法

方法1function unique(array) { let temp = [] for (let i = 0, l = array.length; i < l; i++) { if (temp.indexOf(arr[i]) === -1) temp.push(arr[i]) } return temp}方法2function unique(a...

2019-09-30 00:06:54 495

原创 let,const的区别

const一般用来定义常量或者对象(对象类型在js中是保存一个指针地址所以不会有改变),而let我们就用来定义变量,const是需要初始化的,在定义的时候就需要初始化赋值,而let则不用一开始就初始化,两者都不存在变量提升(暂时性死区),并且会形成一个块级作用域,而且不能重复定义相同的变量名。现在我们稍微整理一下他们的异同点,同时给他俩来个参照物var,得出以下结论。相同点:块级作用域 ...

2019-09-29 23:51:50 788

原创 JS中的深拷贝与浅拷贝

浅拷贝浅拷贝是对象的逐位复制。创建一个新对象,该对象具有原始对象中值的精确副本。如果对象的任何字段是对其他对象的引用,则只复制引用地址,即,复制内存地址。大白话讲就是,浅拷贝是对对象地址的复制,并没有开辟新的栈,也就是复制的结果是两个对象指向同一个地址,修改其中一个对象的属性,则另一个对象的属性也会改变。深拷贝深拷贝复制所有字段,并复制字段所指向的动态分配内存。深拷贝发生在对...

2019-09-29 00:09:17 506

原创 获取Url中参数的方法

一般使用框架的话是可以很快获取到url的参数但是如果要手写一个的话就需要封装一个方法来function params() { const search = window.location.search; //window.location.search会返回url中包含?及其之后的字符串 search = search.substr(1, search.length); //截...

2019-09-28 23:41:46 650

原创 计算某一字符或字符串在另一个字符串中出现的次数

最简单是使用splitfunction repeat(str,parentStr){ if(!str) return 0 return parentStr.split(str).length - 1}var str = 'adaffgasdgfhafgh'repeat(str)//4

2019-09-28 23:19:33 789

原创 HTTP Status code(状态码)和 Status text(状态文本)对照

1xx:临时回应,表示客户端请继续。 2xx:请求成功。 200:请求成功。 3xx: 表示请求的目标有变化,希望客户端进一步处理。 301&302:永久性与临时性跳转 304:跟客户端缓存没有更新 4xx:客户端请求错误。 401:未登录 403: 无权限 404:表示请求的页面不存在 5xx:服务端请求错误 500:服务端错误 502:...

2019-09-27 23:02:59 707

原创 Promise返回值问题(处理异步请求返回值问题)

因为项目中我们的数据请求全都是异步的在开发中遇到的问题:本意将数据请求封装成一个方法,并return数据请求结果给变量如:let getData = () =>{ //service.getList 为数据请求方法名 service.getList().then(function(rs){ return rs })}var da...

2019-09-27 22:42:24 10473 1

原创 给table添加transition动画的问题

问题原因:想动态显示隐藏数据表格,但是显隐想使用transition动画过度,直接给table的高度添加transition却不失效.解决方案:table上直接设置高度(height:0;))并不会直接生效可以给tr中添加一个div,将内容显示在div中,再对div的高度进行设置及添加transition,同时对tr也进行高度控制,并设置transition记得设置paa...

2019-09-26 22:42:17 1887

原创 angularjs中的ng-class的几种使用方式

第一种: <!-- 直接使用变量--><div ng-class="styleClass"></div> $scope.styleClass = 'active'; 第二种:<!--第二种 用{{}}使用表达式--> <div ng-class="{{bgClass}}"></div>...

2019-09-26 22:21:11 788

原创 leetcode题解(八)--不使用加减号进行求和

计算两个整数a和b的总和,但不允许使用+和-运算符。示例1:输入:a = 1,b = 2输出3示例2:输入:a = -2,b = 3输出1不使用加减,那就只能通过位运算来计算首先需要了解两个概念异或:异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同...

2019-09-26 21:59:25 716

原创 把剑心追忆篇才看完了

说不出来的感觉幕府时代的悲剧

2019-09-25 22:17:45 641

原创 iframe操作src或url的方式

因为最近的项目使用了iframe,又开始做适配,而之前项目的一些修改url的操作需要做一些修改才能保证页面跳转及显示正常"window.location.href"、"location.href"是本页面跳转因为框架是用的别的项目的,他们提供项目的菜单框架,而内部的iframe嵌入我们的页面1.当是我们项目内部,即iframe中页面修改1)可以使用"window.location....

2019-09-24 21:39:52 46132 9

原创 加班ing,占坑

占坑

2019-09-23 22:21:15 641

原创 leetcode题解(七)

给定长度为n的数组,找出重复次数最多的元素。 重复最多的元素是出现超过⌊n /2⌋倍的元素。您可以假设该数组非空,并且重复最多的元素始终存在于数组中。例1:输入:[3,2,3]输出:3例2:输入:[2,2,1,1,1,2,2]输出:2 var majorityElement = function(arr){ var num = arr[0], ...

2019-09-20 22:54:31 589

原创 存一下自己常用的vscode设置,eslint自动格式化

保存一下自己常用的vscode设置,不断完善更新一下{ "editor.fontSize": 17, "files.autoSave": "afterDelay", "workbench.iconTheme": "vscode-icons", "editor.fontWeight": "normal", "prettier.singleQuote": ...

2019-09-19 22:46:01 795

原创 leetcode题解(六)

给定已按升序排序的整数数组,找到两个数字,使它们相加到特定的目标数。函数twoSum应返回两个数字的索引,以便它们加起来到目标,其中index1必须小于index2。注意:返回的答案(index1和index2)不是从零开始的。假设每个输入只有一个解决方案,并且不会两次使用相同的元素。示例:输入:数字= [2,7,11,15],目标= 9输出:[1,2]说明:2和7之和为9.因此i...

2019-09-18 21:26:03 524

原创 leetcode题解(五)

给定一个只包含字符'(',')','{','}','['和']'的字符串,确定输入字符串是否有效。如果输入字符串有效:必须使用相同类型的括号关闭左括号。必须以正确的顺序关闭打开括号。请注意,空字符串也被视为有效。例1:输入:“()”输出:true例2:输入:“()[] {}”输出:true例3:输入:“(]”输出:false例4:输入:“([]]”输出:f...

2019-09-17 21:00:10 536

原创 slice,splice,split的区别

slice,splice,split这几个方法因为形似有时不熟悉的时候容易记混了slice和splice都是数组的操作方法而split是字符串的操作方法slice()方法返回一个新的数组对象,这一对象是一个由begin和end决定的原数组的浅拷贝(包括begin,不包括end)。原始数组不会被改变。var fruits = ['Banana', 'Orange', 'Lem...

2019-09-16 21:42:56 733

原创 leetcode感想

最近做了一些LeetCode的题,但是感觉自己并没有完全用到"算法"的概念而是使用技巧达到目的这样不对劲需要把抽象出来,再好好理解一下哎,需要开发开发智商了...

2019-09-15 23:05:15 540

空空如也

空空如也

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

TA关注的人

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