刷题日常计~JS⑥

简介: 刷题日常计~JS⑥

题目难度:★★★☆


①dom节点查找


✍描述

1.查找两个节点的最近的一个共同父节点,可以包括节点自身

📲输入描述:

oNode1 和 oNode2 在同一文档中,且不会为相同的节点

📰代码演示:

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title></head><body></body><script>// oNode1 和 oNode2 在同一文档中,且不会为相同的节点functioncommonParentNode(oNode1, oNode2) {
while (true) {
// oNode1.contains() 返回一个布尔值,来表示传入的节点是否为该节点的后代节点。if (oNode1.contains(oNode2))
returnoNode1oNode1=oNode1.parentNode        }
    }
</script></html>

②修改this指向


✍描述

封装函数 f,使 f 的 this 指向指定的对象

示例1

输入:无

输出:无

📰代码演示:

//改变this的指向有三种方法: call()、bind()、apply()//call//     return function() {//         return f.call(oTarget, ...arguments)//     }//bind// function bindThis(f, oTarget) {//     return f.bind(oTarget)// }//apply// function bindThis(f, oTarget) {//     return function() {//         return f.apply(oTarget, arguments)//     }// }

③根据包名,在指定空间中创建对象


✍描述

根据包名,在指定空间中创建对象

输入描述:

namespace({a: {test: 1, b: 2}}, ‘a.b.c.d’)

输出描述:

{a: {test: 1, b: {c: {d: {}}}}}

📰代码演示:

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title></head><body></body><script>functionnamespace(oNamespace, sPackage) {
letlist=sPackage.split('.');
lettmp=oNamespace;
for (letkinlist) {
if (typeoftmp[list[k]] !=='object') {
tmp[list[k]] = {};
            }
tmp=tmp[list[k]];
        }
returnoNamespace;
    }
</script></html>

数组去重


✍描述

为 Array 对象添加一个去除重复项的方法

示例1

输入:

[false, true, undefined, null, NaN, 0, 1, {}, {}, ‘a’, ‘a’, NaN]

输出:

[false, true, undefined, null, NaN, 0, 1, {}, {}, ‘a’]


📰代码演示:

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title></head><script>Array.prototype.uniq=function() {
return [...newSet(this)];
    }
</script></html>

斐波那契数列


✍描述

用 JavaScript 实现斐波那契数列函数,返回第n个斐波那契数。 f(1) = 1, f(2) = 1 等

📰代码演示:

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title></head><body></body><script>functionfibonacci(n) {
if (n<1) return-1;
leta=1,
b=1;
for (leti=2; i<n; i++) {
b=a+b;
a=b-a;
        }
returnb;
    }
</script></html>

最后


image.png

下篇文章再见ヾ( ̄▽ ̄)ByeBye

image.png

相关文章
|
6月前
|
JavaScript Java 测试技术
基于微信小程序的刷题系统的+springboot+vue.js附带文章和源代码设计说明文档ppt
基于微信小程序的刷题系统的+springboot+vue.js附带文章和源代码设计说明文档ppt
59 1
|
存储 JavaScript 前端开发
刷题日常计~JS⑤
刷题日常计~JS⑤
刷题日常计~JS⑤
|
JavaScript 前端开发
刷题日常计~JS④
刷题日常计~JS④
刷题日常计~JS④
|
JavaScript 前端开发
刷题日常计~JS③
刷题日常计~JS③
刷题日常计~JS③
|
机器学习/深度学习 JavaScript 前端开发
刷题日常计~JS②
刷题日常计~JS②
刷题日常计~JS②
|
存储 JavaScript 前端开发
刷题日常计~JS①
刷题日常计~JS①
刷题日常计~JS①
|
JavaScript 前端开发
【牛客前端刷题】JS拔高篇
【牛客前端刷题】JS拔高篇
153 0
【牛客前端刷题】JS拔高篇
|
机器学习/深度学习 存储 JavaScript
【牛客刷题】前端--JS篇(三)
【牛客刷题】前端--JS篇(三)
184 0
【牛客刷题】前端--JS篇(三)
|
前端开发 JavaScript
【牛客刷题】前端--JS篇(二)
【牛客刷题】前端--JS篇(二)
【牛客刷题】前端--JS篇(二)
|
前端开发 JavaScript
【牛客刷题】前端--JS篇(一)
【牛客刷题】前端--JS篇(一)
【牛客刷题】前端--JS篇(一)