自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 es6学习笔记3:Proxy

1.概述(代理器)Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改。Proxy 可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写Proxy 实际上重载了点运算符,即用自己的定义覆盖了语言的原始定义ES6 原生提供 Proxy 构造函数,用来生成 Proxy 实例var pr...

2019-03-15 10:37:38 244

原创 es6学习笔记3:Set和Map数据结构

1.SetES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set本身是一个构造函数,用来生成Set数据结构 const s= new Set();它可以接受一个数组(或者具有iterable接口的其他数据结构)作为参数,用来初始化。Set 内部判断两个值是否不同,它类似于精确相等运算符(===),主要的区别是NaN等于自身另外两个对象总是不相等的...

2019-03-13 10:10:47 195

原创 es6学习笔记2:Symbol

1.概述Symbol引入Symbol的原因是从根本上防止对象属性名(字符串)的冲突。Symbol是一种新的原始数据类型,前六种是undefined、null、Boolean、String、Number、Object。Symbol值通过Symbol函数生成,对象的属性名现在可以有两种类型,一种是原来就有的字符串,另一种就是新增的Symbol类型(独一无二不会冲突)注意:Symbol函数前...

2019-03-05 10:24:01 229

原创 es6学习笔记1:对象的新增方法

1.object.is()用来比较两个值是否严格相等,与严格比较运算符(===)的行为基本一致。不同之处只有两个:1.+0不等于-0 2.NaN等于自身2.object.assign()用于对象的合并,将源对象(source)的所有可枚举属性复制到目标对象(targe)第一个参数是目标对象,后面的参数都是源对象注意:1.如果目标对象与源对象有同名属性,或多个源对象有...

2019-03-01 10:43:06 169

原创 实习面试2:字节跳动前端开发实习生

全程只有一面,面试官人很好,一直在引导我,由于自己太菜了,感觉浪费了人家面试官的时间。感谢遇到的每一位面试官,谢谢一直很有耐心引导我。1.函数执行作用域的问题。window.name="bytedance"function A () { this.name='123'}A.prototype.getA=function () { console.log(this)...

2019-02-27 22:24:47 1163

原创 实习面试1:爱奇艺web前端开发

一面:首先介绍下自己介绍下你的项目vue组件间是如何传值的编程题:一个很大的整型数,加上千分位标志符 例如999,888,777,666编程题:随机从0-1000中取一个数,最终将1000个数取完,如何可以快速实现脑力题:两个人依次在一个圆盘上摆硬币,每人一次摆一个,最后一个将圆盘铺满的人获胜(硬币不可重叠),如何才能让自己每次都赢脑力题:一个绳子烧完60分钟,两根绳如...

2019-02-25 22:06:33 1400

原创 拼多多前端面经集合

1.css中的水平居中的不同方式行内元素(内联元素):<span>、<a>、<label>、<em>、<img>等。text-align:center块级元素有:div  , p  , form,   ul,  li ,  ol, dl,    form,   address,  fieldset,  hr, menu,  t...

2019-02-21 12:59:44 628

转载 git简单提交代码过程

原文:https://blog.csdn.net/qq_37577660/article/details/78565899 简单的代码提交流程git status 查看工作区代码相对于暂存区的差别git add . 将当前目录下修改的所有代码从工作区添加到暂存区 . 代表当前目录git commit -m ‘注释’ 将缓存区内容添加到本地仓库git push origin master 将本地...

2019-02-13 11:47:47 177

原创 剑指Offer66:机器人的运动范围

思路:1.从(0,0)开始走,每成功走一步标记当前位置为true,然后从当前位置往四个方向探索,返回1 + 4 个方向的探索值之和。2.探索时,判断当前节点是否可达的标准为:1)当前节点满足limit限制。2)当前节点在矩阵内;3)当前节点未被访问过;# -*- coding:utf-8 -*-class Solution: def __init...

2019-01-25 09:34:14 133

原创 剑指Offer65:

思路:# -*- coding:utf-8 -*-class Solution: def hasPath(self, matrix, rows, cols, path): # write code here for i in range(rows): for j in range(cols): ...

2019-01-24 09:28:21 157

原创 剑指Offer64:滑动窗口的最大值

思路:# -*- coding:utf-8 -*-class Solution: def maxInWindows(self, num, size): # write code here maxnum=[] if size==0 or len(num)==0: return [] for i i...

2019-01-23 09:29:54 121

原创 剑指Offer63:数据流中的中位数

如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。思路:直接用sort排序,然后判断data的数据长度。# -*- coding:utf-8 -*-cl...

2019-01-22 16:25:54 183 1

原创 剑指Offer62:二叉搜索树的第k个结点

给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。思路:# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# ...

2019-01-21 09:35:05 104

原创 剑指Offer61:序列化二叉树

请实现两个函数,分别用来序列化和反序列化二叉树思路:1. 对于序列化:使用前序遍历,递归的将二叉树的值转化为字符,并且在每次二叉树的结点不为空时,在转化val所得的字符之后添加一个' , '作为分割。对于空节点则以 '#' 代替。2. 对于反序列化:按照前序顺序,递归的使用字符串中的字符创建一个二叉树# -*- coding:utf-8 -*-# class TreeNod...

2019-01-20 10:24:07 91

原创 剑指Offer60:把二叉树打印成多行

从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。思路:数组初始化注意,有的需要在循环里面。刚开始需要判断pRoot是否为空。# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# ...

2019-01-19 12:57:01 149

原创 JS能力测评45:判断是否符合 USD 格式

思路:本题注意点有必须是USD格式,以$开头,数字结尾,$和小数点的转义。首先,开头必是$,而正则表达式中$表示结尾,需要进行转义,因此开头为^\$然后$后必然接数字,并且最少一位,最多三位数,可用{m,n}表示,最少m位,最多n位,因此此段为\d{1,3}接着,后面如还有数,则必然有,分隔,并且后面必有3个数,类似于,XXX的格式会出现0或者n次,因此此段可表示为(,\d{3})*最...

2019-01-19 12:35:50 209

原创 JS能力测评44:判断是否符合指定格式

思路:本题需要注意格式,开头^和结尾$必须加上来限定字符串,3个数可表示为\d{3},4个数则为\d{4},{n}表示前面内容出现的次数。正则表达式可写作/^\d{3}-\d{3}-\d{4}$/,有相同部分\d{3}-,因此也可写作/^(\d{3}-){2}\d{4}$/function matchesPattern(str) { var b=/^(\d{3}-){2}\d{4...

2019-01-19 12:25:34 154

原创 剑指Offer59:按之字形顺序打印二叉树

思路:# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def Print(self, pRoot): ...

2019-01-18 10:25:19 86

原创 JS能力测评43:获取指定字符串

思路:是连续3个数字,而不是3个连续的数字function captureThreeNumbers(str) { //声明一个数组保存匹配的字符串结果 var arr = str.match(/\d{3}/); //如果arr存在目标结果,则返回第一个元素,即最早出现的目标结果 if(arr) { return arr[0]; ...

2019-01-18 10:00:49 100

原创 JS能力测评42:判断是否以元音字母结尾

思路:首先确定元音集合[a,e,i,o,u],然后是以元音结尾,加上$,最后通配大小写,加上i。因此正则表达式为:/[a,e,i,o,u]$/i,最后用test方法去检测字符串strfunction endsWithVowel(str) { var b=/[a,e,i,o,u]$/i return b.test(str); } ...

2019-01-18 09:53:55 610

原创 剑指Offer58:对称的二叉树

思路:# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def isSymmetrical(self, pR...

2019-01-17 14:42:04 116

原创 JS能力测评41:检查重复字符串

思路:function containsRepeatingLetter(str) { var b=/([a-zA-Z])\1/; return b.test(str)} 

2019-01-17 13:32:12 100

原创 JS能力测评40:判断是否包含数字

思路:判断字符串中是否含有数字,可以用正则表达式。/\d/可以匹配字符串中的数字字符,用test方法可以检测。function containsNumber(str) { var b = /\d/; return b.test(str); } ...

2019-01-17 13:19:21 1467

原创 剑指Offer57:二叉树的下一个结点

思路:分析二叉树的下一个节点,一共有以下情况:1.二叉树为空,则返回空;2.节点右孩子存在,则设置一个指针从该节点的右孩子出发,一直沿着指向左子结点的指针找到的叶子节点即为下一个节点;3.节点不是根节点。如果该节点是其父节点的左孩子,则返回父节点;否则继续向上遍历其父节点的父节点,重复之前的判断,返回结果# -*- coding:utf-8 -*-# class TreeL...

2019-01-16 10:28:20 67

原创 JS能力测评39:属性遍历

思路:function iterate(obj) { var arr=[]; for(var key in obj){ if(obj.hasOwnProperty(key)){ arr.push(key+ ': '+obj[key]); } } return arr;} 

2019-01-16 10:07:39 84

原创 JS能力测评38:批量改变对象的属性

思路:这是原型链问题。访问一个对象的方法或者是属性,首先会在该对象中寻找,如果找到则返回,如果没找到,则在其原型链上面向上寻找,直至基原型,如还未找到,则返回undefined。将 constructor 的所有实例的 greeting 属性指向给定的 greeting 变量,只需要在constructor的原型上面添加greeting属性,并指定值。function alterObje...

2019-01-16 10:03:32 179

原创 JS能力测评56:删除链表中重复的结点

思路:class Solution: def deleteDuplication(self, pHead): # write code here if pHead is None or pHead.next is None: return pHead head1 = pHead.next if h...

2019-01-15 10:39:55 150

原创 JS能力测评37:改变上下文

思路:在JavaScript中,函数是一种对象,其上下文是可以变化的,对应的,函数内的this也是可以变化的,函数可以作为一个对象的方法,也可以同时作为另一个对象的方法,可以通过Function对象中的call或者apply方法来修改函数的上下文,函数中的this指针将被替换为call或者apply的第一个参数。将函数 fn 的执行上下文改为 obj 对象,只需要将obj作为call或者app...

2019-01-15 10:03:17 313

原创 JS能力测评36:乘法

思路:function multiply(a, b) { return a*b;}function multiply(a, b) { return a*b*10000*10000/10000/10000} 

2019-01-15 09:40:05 166

原创 剑指Offer55:链表中环的入口结点

思路:# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def EntryNodeOfLoop(self, pHead): # write code...

2019-01-14 09:34:13 82

原创 JS能力测评35:二进制转换

思路:function convertToBinary(num) { str=num.toString(2); while(str.length<8) { str = '0'+str; } return str; } 

2019-01-14 09:30:19 133

原创 JS能力转换34:二进制转换

思路:parseInt方法的可选参数是操作数的进制说明,不是目标的进制。数字转字符用toString(),字符转数字用parseInt() or parseFloat.function base10(str) { return parseInt(str,2);} ...

2019-01-14 09:23:09 643 1

原创 剑指Offer54:字符流中第一个不重复的字符

思路: char 是一个个的字符。s是所有char合起来的字符串。Insert函数统计每个字符出现的个数。FirstAppearingOnce函数找出第一个不重复字符。# -*- coding:utf-8 -*-class Solution: # 返回对应char def __init__(self): self.s = '' self....

2019-01-13 11:04:18 67

原创 JS能力测评33:二进制转换

思路:function valueAtBit(num, bit) { var s = num.toString(2); return s[s.length - bit]; }位移运算搞定: function valueAtBit(num, bit) { return (num >> (bit -1)) & 1;} ...

2019-01-13 10:50:06 117

原创 JS能力测评32:模块

思路:声明对象有两种常见的方式:var obj = {};和var obj = new Object();。前面一种可以直接在括号中以key:value的方式定义属性,后一种采用点运算符给对象添加属性。字面量模式:function createModule(str1, str2) { var obj={ greeting:str1, name:s...

2019-01-13 10:41:18 105

原创 剑指Offer53:表示数值的字符串

思路: # -*- coding:utf-8 -*-class Solution: # s字符串 def isNumeric(self, s): # write code here hasE=False sign=False decimal=False for i in range(0,len(...

2019-01-12 10:55:44 70

原创 JS能力测评31:且运算

思路:function and(a, b) { return a&&b;} 

2019-01-12 10:00:16 230 1

原创 JS能力测评30:或运算

思路:function or(a, b) { return a||b;} 

2019-01-12 09:58:10 110

原创 剑指Offer52:正则表达式匹配

思路:class Solution: # s, pattern都是字符串 def match(self, s, pattern): # 如果s与pattern都为空,则True if len(s) == 0 and len(pattern) == 0: return True # 如果s不为空,而patt...

2019-01-11 10:43:02 92

原创 JS能力测评29:柯里化

思路:柯里化是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术。简单理解题目意思,就是指,我们将预定义的函数的参数逐一传入到curryIt中,当参数全部传入之后,就执行预定义函数。于是,我们首先要获得预定义函数的参数个数fn.length,然后声明一个空数组去存放这些参数。数并执行,当参数个返回一个匿名函数接收参数小于fn...

2019-01-11 09:47:32 90

空空如也

空空如也

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

TA关注的人

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