前端消防圆
前端消防圆
全部文章
分类
归档
标签
去牛客网
登录
/
注册
前端消防圆的博客
TA的专栏
168篇文章
3人订阅
剑指offer
80篇文章
567人学习
字节跳动前端
2篇文章
325人学习
前端js面试
86篇文章
682人学习
全部文章
(共169篇)
题解 | #获取字符串的长度#
来自专栏
思路:遍历字符串,使用string.charCodeAt(index)方法获取对应下标处字符的Unicode编码值,返回一个介于0到65535之间的整数,其中大于255的算作两个长度。 function strLength(s, bUnicode255For1) { if(bUnicode...
2023-06-21
1
277
题解 | #时间格式化输出#
来自专栏
思路:使用一个对象表示标准格式与对象内容的对应,注意,其中同系列长的要在前面,因为要从前向后遍历,同时位数对齐也需要单独处理,最后遍历对象并使用replace方法依次替换即可。 function formatDate(date, format) { let addZero = functi...
2023-06-21
1
385
题解 | #斐波那契数列#
来自专栏
思路:递归咯。 function fibonacci(n) { if(n==1) return 1 if(n==2) return 1 return fibonacci(n-1)+fibonacci(n-2) } 总结:递归,注意,递归边界,递...
2023-06-21
1
271
题解 | #数组去重#
来自专栏
思路:使用当前数组this构造一个Set对象,再将Set对象析构为数组返回即可。 Array.prototype.uniq = function () { //使用new Set去重 this指向的是当前数组 let uniqset=new Set(this) //使用析构....
2023-06-21
1
216
题解 | #根据包名,在指定空间中创建对象#
来自专栏
思路:题目意思是,a.b.c.d,即在a属性值中包含b属性,而在b属性值中又包含c属性,而在c属性值中又包含d属性,因为对象不仅可以使用obj[key],还可以使用obj.key。首先使用split方法以.分割sPackage得到属性名数组arr,然后使用tmp表示当前对象oNamespace,接着...
2023-06-21
2
300
题解 | #修改 this 指向#
来自专栏
思路:call()、bind()、apply()的用法,改变this的指向,区别在于:f.bind(obj, arg1, arg2,...)(),bind()方法创建一个新的函数,故需要自己调用;f.call(obj, arg1, arg2...),call()方法在调用函数后会返回函数的执行结果,...
2023-06-21
1
321
题解 | #dom 节点查找#
来自专栏
思路:固定oNode2不变,不断向上查找oNode1,直至找到两个节点的公共祖先节点。首先使用A.contains(B)方法判断oNode1是否是oNode2的祖先节点,如果是则直接返回oNode1,反之使用递归方法查找oNode1的父节点oNode1.parentNode和oNode2的公共祖先节...
2023-06-21
1
327
题解 | #虚拟DOM#
来自专栏
思路:首先使用{tag,props,text,children}析构vnode,再判断tag是否为undefined,如果没有标签则直接使用createTextNode方法创建文本节点并返回,反之使用createElement方法创建tag标签元素,并遍历props对象,使用setAttribute...
2023-06-20
4
247
题解 | #字体高亮#
来自专栏
思路:p表示搜索框文本,s表示内容文本,首先使用s.indexOf(p)查找s中是否出现过p,如果出现过则使用new RegExp(p,'g')全局创建一个正则表达式,然后使用replace方法将s中的p全部替换为带样式的html内容,再将其更新为内容html,反之没有出现过则搜索所有b标签,并将其...
2023-06-20
1
270
题解 | #高频数据类型#
来自专栏
思路:使用map表示数据类型与对应出现的次数,使用变量maxc表示出现的最大次数,使用arr表示结果。首先使用forEach方法遍历数组array,并判断每一项的数据类型,再设置map将对应的数据类型出现的次数加一,同时使用当前出现次数更新最大出现次数;接着使用forEach方法遍历map的键值对,...
2023-06-20
1
298
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页