自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 深copy,递归,非递归

1、简单递归,只处理了 object 类型和简单类型const deepCopy = s => { let r = {}; for (let key in s) { r[key] = typeof s[key]=== 'object' ? deepCopy(s[key]): s[key]; } return r;}const obj1 = { a : 1, b : 2, c: { cc: 1 }}const obj2 = deepCopy(

2021-04-29 18:08:12 209

原创 如何安全的访问对象

1、提前检测下是否存在let z = x && x.y && x.y.z2、使用ECMAScript新标准,有的项目中可能需要更改下babel的配置来支持新语法,语法使用:let z = a?.y?.z;3、引入npm包,例如:lodash/get,使用:安装 "lodash": "4.17.11",// 文件中引入import get from 'lodash/get'// 获取 a = {y: {z: 11}}get(a, 'y.

2021-04-20 14:19:21 149

原创 小程序页面层级深度限制10层,解决方案

const MAX_VALUE = 10;/** * 解除小程序页面10层限制 * @param obj */export function unfreezeNavigateTo(obj) { var pages = getCurrentPages(), // 页面栈 len = pages.length, dlt = '', url = '/' + obj.url.replace(/^\//, ''); // 如果有,将第一个‘/’去掉,然后再补上(开.

2021-01-11 10:53:06 2803 3

原创 多个span在同一行却不同高度的解决办法

一、代码:<div> <span>你有</span> <span class="red">5</span> <span>次抽奖机会</span></div>二、表现:三、结论:中间span标签内容只有数字,当这种只有数字的时候,就会出现这种玄幻的事情,亲测,中间加一个文案就不会有问题了,但是如果类似上面这种,遇到需求里只有数字的怎么办,可参考如下解决办法四、解决方案:1

2020-11-19 17:20:01 1023

原创 正则表达式?:代表什么意思

每一个正则表达式又可能是由很多子表达式组成,一个()代表一个子表达式,例如([1-9])代表一个子表达式:match() 方法将检索字符串"3yyyyyy",以找到一个与 regexp /([1-9])yy/匹配的文本。因为 regexp 没有标志 g,那么 match() 方法就只能在"3yyyyyy"中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。该数组的第 0 个元素"3yy"存放的是...

2020-11-19 16:57:08 4390

原创 关闭安全策略,解决跨域

open -n /Applications/Google\ Chrome.app/ --args --disable-web-security --user-data-dir=/Users/yourMacName/Documents/ChromeDevInfoopen -n 打开一个全新的谷歌浏览器窗--disable-web-security 这个参数可以降低chrome浏览器的安全性,禁用同源策略,利于开发人员本地调试由于这种方式关闭了同源策略,安全性降低,所以主要注意数据安全...

2020-07-19 16:27:11 790

原创 Java算法题--坐标题找目标(下次再见到你,我肯定要AC!)

大致意思是:一个人从(0,0)出发,到目标结点(x,y),坐标图上有n个障碍物,问到达目标节点至少需要走几步,一定会有结果。输入:第一行:x y n接下来n行表示障碍物坐标输出:结果例如输入:2 0 31 11 01 -1输出:6Java:import java.util.HashMap;import java.util.Hash...

2019-09-15 21:33:57 350

原创 字节跳动笔试

做题速度太慢了,做的第二个还没改好就没时间了机器人看齐给一串数字,某个位置的机器人可以看到他前面的比他都高或者跟他一样高的机器人例如:6 5 3 4 75只能看到63只能看到54只能看到57谁都看不到import java.util.Scanner;public class PrimTest { public static void main(Str...

2019-09-08 21:44:02 488

原创 前端构建工具(理解+使用)

一、构建工具可以做什么?安装 vs 做事情1、安装包工具:例如:npm、Bower,Yeoman可以安装几乎所有的东西。他们可以安装前端框架,比如Angular.js或者React.js。他们可以为你的开发环境安装服务器。他们可以安装测试框架。他们甚至帮你安装其他的前端构建工具。2、做事情的工具:比如Grunt、Webpack、Require.js、Brunch和Gul...

2019-09-02 17:04:00 952

原创 js继承的6种方式

废话没有,直接上代码假设要继承的对象是personfunction Person() { this.name = "person";}/** Person.prototype是person的原型对象,里面可以放一些原型对象的属性和方法*/Person.prototype.getName = function () { console.log(this.nam...

2019-08-28 08:32:05 215

原创 图片的所有格式,对应的适合于什么场景?有什么优化的方案?

一、常见的图片的格式1、TIFF格式TIFF(Tag Image File Format)是Mac中广泛使用的图像格式,它的特点是图像格式复杂、存贮信息多。正因为它存储的图像细微层次的信息非常多,图像的质量也得以提高,故而非常有利于原稿的复制。2、PSD格式PSD其实是Photoshop进行平面设计的一张"草稿图",它里面包含有各种图层、通道、遮罩等多种设计的样稿,以便于下次打开...

2019-08-22 20:01:58 1444

原创 each和foreach的区别

forEach()1、JavaScript(ES5)的方法,对ie8以下不兼容2、不能遍历伪数组,如果想用forEach()遍历伪数组,可以改变this指向,例如:Array.prototype.slice.call( 数据 );真伪数组的区别:真数组的长度是可变的,伪数组的长度不可变真数组可以使用数组中的方法(.forEach、pop、push等),伪数组不可以...

2019-08-18 15:09:03 256

原创 大疆前端笔试编程总结

B卷:一、爱玩游戏的小J大概意思:每一个游戏都有一个成就值和时间消耗,问在给定的时间内,小J最多能收获多少成就值典型的01背包问题:import java.util.Scanner;public class xx { public static void main(String[] args) { Scanner sc = new Scanner(System.in...

2019-08-07 17:07:23 954

原创 前端存储方式cookie

一、cookiecookie是浏览器提供的一种机制,它将document 对象的cookie属性提供给JavaScript。可以由JavaScript对其进行控制,而并不是JavaScript本身的性质。cookie是存于用户硬盘的一个文件,这个文件通常对应于一个域名,当浏览器再次访问这个域名时,便使这个cookie可用。因此,cookie可以跨越一个域名下的多个网页,但不能跨越多个域名使用。...

2019-08-01 17:29:48 1152

原创 css的选择器有哪些?他们的优先级?哪些属性可以继承?

一、css选择器名称 符号 id选择器 # class选择器 . 标签选择器 例如P 通配符选择器 * 子代选择器 > 后代选择器 空格 相邻兄弟选择器 + 选择器分组 , 属性选择器 [xxx]、[rel=xxx] 伪类 二、优先级! important > id...

2019-08-01 10:26:42 516

原创 javascript防止对象被修改

对象类型/操作 增加 删除 修改 初始对象 T T T 不可扩展对象 F T T 封闭对象 F F T 冷冻对象 F F F 一、不可扩展对象 window.onload = function(){ var test = { ...

2019-07-31 22:12:23 1201

原创 js事件委托的概念

一、什么是事件委托?1、事件委托机制,委托它们父级代为执行事件。是通过addEventListener实现的,它允许给同一个dom节点添加一个或多个同种类型或不同类型的监听事件;例如:用常用的绑定事件的方法,同时注册两个事件,后一个事件会覆盖上面的事件 <script type="text/javascript"> window.onload = f...

2019-07-31 17:41:01 279

原创 进程之间的通信方式及适用场景

进程通信是指进程之间的信息交换,根据传输数据的大小,可以把进程通信分为低级通信机制(效率低,例如信号量机制) 高级通信机制(OS封装了细节,直接高效使用原语)在进程之间要传递大量数据时,应当使用高级通信机制,高级通信机制一般分为四大类:共享存储器系统 管道通信系统 消息传递系统 客户机-服务器系统具体的进程通信方式有以下几种:=====================...

2019-07-31 10:17:42 7248

原创 冒泡排序、插入排序、选择排序、快速排序、归并排序、希尔排序

一、冒泡排序:两两比较,逆序则交换,和吐泡泡一样,咕噜咕噜~,每次把最小/大的数据放在前面 var arr = [7,5,61,2,3,14]; for (let i = 0; i < arr.length-1; i++) { for (let j = i+1; j < arr.length; j++) { ...

2019-07-30 16:27:45 189

原创 搜狗一个面试测试题

我的一个小伙伴面试过程中遇到的一个面试题,没事练练手:Java:import java.util.Scanner;public class foot { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int le = 1; while(sc.hasNex...

2019-07-28 18:07:22 592

转载 TCP和UDP的区别

参考回答:(1)TCP是面向连接的,udp是无连接的即发送数据前不需要先建立链接。(2)TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付。 并且因为tcp可靠,面向连接,不会丢失数据因此适合大数据量的交换。(3)TCP是面向字节流,UDP面向报文,并且网络出现拥塞不会使得发送速率降低(因此会出现丢包,对...

2019-07-21 22:10:25 975

转载 HTTPS和HTTP的区别

什么是 HTTPS?HTTPS (基于安全套接字层的超文本传输协议 或者是 HTTP over SSL) 是一个 Netscape 开发的 Web 协议。你也可以说:HTTPS = HTTP + SSLHTTPS 在 HTTP 应用层的基础上使用安全套接字层作为子层。为什么需要 HTTPS ?超文本传输协议 (HTTP) 是一个用来通过互联网传输和接收信息的协议。HTTP 使用...

2019-07-21 10:29:59 190

原创 js中每种类型与其他类型之间的转换

其它类型转化数字 原始数据类型 目标类型Number undefined NaN null 0 false 0 true 1 数字串 相应的数字 不能转化的字符串 NaN 其它类型转化为字符串 原始数据类型 目标类型String undefined undefined null null fal...

2019-07-10 10:33:37 111

原创 第几个幸运数

到x星球旅行的游客都被发给一个整数,作为游客编号。 x星的国王有个怪癖,他只喜欢数字3,5和7。 国王规定,游客的编号如果只含有因子:3,5,7,就可以获得一份奖品。我们来看前10个幸运数字是: 3 5 7 9 15 21 25 27 35 45因而第11个幸运数字是:49小明领到了一个幸运数字 59084709587505,他去领奖的时候,人家要求他准确地说出这是第几个幸运数字,否...

2019-05-20 22:11:49 168

原创 set集合遍历

import java.util.HashSet;import java.util.Set;public class set { public static void main(String[] args) { Set<Integer> s = new HashSet<>(); s.add(1); s.add(1); s.add(2); s.a...

2019-05-20 17:25:38 475

原创 插入排序、折半插入排序Java实现

插入排序:public class insert { public static void main(String[] args) { int a[] = {0,49,38,65,97,76,13,27,49}; f(a); for (int i = 1; i < a.length; i++) { System.out.print(a[i]+" ");...

2019-04-21 11:52:16 287

原创 Problem A 最大下降矩阵

import java.io.IOException;import java.io.InputStreamReader;import java.io.Reader; public class Main { private static Reader reader; public static void main(String[] args) { reader = new Inpu...

2019-04-15 15:50:53 173

原创 问题 B: icebound的商店

问题 B: icebound的商店时间限制:1 Sec内存限制:64 MB题目描述icebound在得到神殿的宝藏之后,开了一家神秘的商店。你来到了商店,发现慷慨的icebound搞了T次促销活动。在每 次促销活动中,icebound都会想出一个他喜欢的数字,如果你买的商品的总价刚好等于icebound喜欢的数字,那么你就 可以免费得到这些商品。icebound的商店里一共有...

2019-04-14 10:07:34 449

原创 html中的标记abbr与acronym有什么不同

区别:<abbr>表示简称,<acronym>仅仅代表首字母缩写,所以<abbr>的语义范围更大。使用时,完整的词写在title属性中,例子:<abbrtitle="PageRank">PR</abbr>目前想到的ABBR及ACRONYM标签的两个好处:1、增加可阅读性。我们经常遇到样的情况,比如逛论坛时候...

2019-04-02 21:37:22 470

原创 第十届蓝桥杯省赛原题及参考答案

思路:这一题没有看懂是要挑选出成绩峰值最大的5个人,还是根据平均值选出5个人求其峰值和;第一种情况答案是490第二种情况没算我考试时没有看清题意,以为是求出这几组数据的最大值,成功避开了题意,所以第一题就很随意的凉凉了~~思路:截取所有可能的字符串放入hashmap中,hashmap的特点就是:如果有重复的字符串会覆盖之前的字符串,最后利用map....

2019-03-25 19:46:31 44908 19

原创 hashmap四种遍历方法

import java.util.HashMap;import java.util.Iterator;import java.util.Map;public class test { public static void main(String[] args) { HashMap<Integer, String> hashmap = new HashMap&...

2019-03-23 22:12:29 132

原创 每周一题之2 Mineweep(扫雷)

Minesweeper(扫雷)PC/UVa IDs: 110102/10189,Popularity: A,Success rate: high Level: 1测试地址:https://vjudge.net/problem/UVA-10189[问题描述]Have you ever played Minesweeper? It’s a cute little ...

2019-03-22 08:47:48 136

原创 每周一题之1 3n+1问题

每周一题之13n+1问题PC/UVa IDs: 110101/100Popularity: ASuccess rate: low Level: 1测试地址:https://vjudge.net/problem/UVA-100[问题描述]考虑如下的序列生成算法:从整数 n 开始,如果 n 是偶数,把它除以 2;如果 n 是奇数,把它乘 3 加1。用新...

2019-03-21 21:51:09 233

原创 HTTP和HTTPS协议

网址(域名)就是IP地址的别名,就是为了能够方便客户端与服务器端的交互。WEB服务存在http和https两种通信方式,两种通信方式有什么区别:1、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。2、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。3、http的连接很简单,是无状态的;HTTPS协...

2019-03-04 17:46:22 143

转载 MacOS 升级自带的PHP版本到7

输入下面命令,安装php7.1安装包,安装过程需要输入系统的密码curl -s http://php-osx.liip.ch/install.sh | bash -s 7.1把php7加入环境变量sudo vim ~/.bash_profile写入以下内容export PATH=/usr/local/php5/bin:$PATH运行以下命令source ~/.b...

2019-02-20 20:12:09 282

原创 算法训练 审美课

做对这道题真是解决了不少坑,也学到不少的东西~~代码(java):import java.io.IOException;import java.io.InputStreamReader;import java.io.Reader;import java.util.Map;import java.util.Map.Entry;import java.util.TreeMap;...

2019-02-18 19:29:13 678

原创 HTML全局属性(global attribute)有哪些?

参考资料(全局属性兼容性特别不好,几乎各个浏览器很少支持):MDN: html global attribute或者W3C HTML global-attributesaccesskey:设置快捷键,提供快速访问元素如aaa在windows下的firefox中按alt + shift + a可激活元素class:为元素设置类标识,多个类名用空格分开,CSS和javascript可通过c...

2019-01-22 17:56:08 3622 1

原创 个位数统计 (15)

算法Java:import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); char a[] = s.toCharArray();...

2019-01-20 16:11:11 128

原创 月饼 (25)

算法Java(完全背包问题):import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int c = sc.nextInt(); ...

2019-01-20 16:05:01 136

原创 1019. 数字黑洞 (20)

算法Java(递归):import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); ff(n); } private static...

2019-01-20 15:55:57 85

空空如也

空空如也

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

TA关注的人

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