前端每日一题
每天一道前端面试题,从做题中回顾和学习知识,零碎但高效。每日做题,每日复盘,每日总结
modaoshi51991
这个作者很懒,什么都没留下…
展开
-
【前端每日一题】day11
请找到这个盒子并打开,输出这个盒子内部所有小盒子的id和 name,并继续打开这些小盒子输出id和 name(由外到内逐层打印)先通过document.getElementById()方法获得指定id 的div DOM元素,然后向下递归调用开盒子方法。getAttribute() 是一个用于获取元素属性值的方法。每个盒子都有一个唯一的id和 name 属性。children属性可以返回一个类似数组的对象,其中包含了所有子元素。一个盒子(DIV)里有若干个小盒子,每个小盒子里还可能有多个小盒子。原创 2024-05-24 18:01:19 · 235 阅读 · 0 评论 -
【前端每日一题】day9——vue/react 传值
在Vue.js和React中,组件间的通信和传值是非常重要的部分。根据组件间的关系,可以使用不同的方法来实现通信。以下是Vue.js和React中父子组件通信和没有父子关系的组件间通信的几种常见方法,并附有代码示例。原创 2024-05-22 13:07:13 · 1544 阅读 · 0 评论 -
【前端每日一题】day10——js实现冒泡排序
冒泡排序(Bubble Sort)是一种简单的排序算法,它重复地遍历待排序的列表,比较相邻的元素并根据需要交换它们。这个过程重复进行,直到列表完全有序。冒泡排序虽然简单易懂,但它的时间复杂度是O(n^2),对大数据集的排序效率较低。在实际应用中,通常会选择更高效的排序算法(如快速排序或归并排序)。对列表进行多次遍历,直到没有任何元素需要交换为止。从列表的第一个元素开始,依次比较相邻的两个元素。如果前一个元素大于后一个元素,则交换这两个元素。每次遍历后,最大的元素会“冒泡”到列表的末尾。原创 2024-05-21 15:30:05 · 200 阅读 · 0 评论 -
【前端每日一题】day8——统计字符串各字符数
for…of 是 JavaScript 中的一种循环语法,用于遍历可迭代对象(如数组、字符串等)。在这种循环中,char 变量会依次被赋值为字符串 str 中的每个字符。方括号语法:array[string] 会尝试获取对象 array 中名为 string 的属性的值。注意:JavaScript 中用方括号语法 array[string] 访问属性时,string 实际上是一个字符串类型的键值,而不是变量名。原创 2024-05-17 07:55:57 · 332 阅读 · 0 评论 -
【前端每日一题】day7——数组求和
isArray方法用来判断元素是否为数组,是返回true,否返回false。写一个函数可以对下面数组内的值进行求和,求和的结果是:27。思路:先把嵌套数组展开,然后对数组求和。原创 2024-05-16 19:54:21 · 268 阅读 · 0 评论 -
【前端每日一题】day6——数组区间划分
一个函数将1~100按照提供的数组进行区间划分,如:[5,3,9],划分。的结果是1 ~ 3,4 ~ 5,6 ~ 9,10 ~ 100。原创 2024-05-15 20:43:38 · 955 阅读 · 0 评论 -
【前端每日一题】day5——JS 实现继承的几种方式
在JavaScript中,实现继承的几种方式包括原型链继承、构造函数继承、组合继承、原型式继承、寄生式继承和组合式继承。JS 实现继承的几种方式。原创 2024-05-13 19:36:06 · 290 阅读 · 0 评论 -
【前端每日一题】day4——数组扁平化的实现
数组扁平化(flatten)是将一个多维数组转换为一个一维数组的过程。在 JavaScript 中,可以使用递归或者数组的一些内置方法来实现数组扁平化。原创 2024-05-11 19:06:14 · 182 阅读 · 0 评论 -
【前端每日一题】 day3——JS的原型链如何实现继承
每个对象都有一个原型(prototype),该原型又是一个对象,而这个对象又有自己的原型,以此类推,形成了一个原型链。当试图访问一个对象的属性或方法时,JavaScript会首先在该对象本身上查找,如果找不到,就会沿着原型链向上查找,直到找到相应的属性或方法,或者到达原型链的末端。Dog 是一个子类,通过调用父类的构造函数 Animal.call(this, name) 继承了父类的属性,并通过 Object.create(Animal.prototype) 继承了父类的方法。原创 2024-05-10 21:43:19 · 292 阅读 · 1 评论 -
【前端每日一题】day2——用JS写一个快速排序算法
它接受一个数字作为参数,并返回小于或等于该数字的最大整数。然后循环数组内的元素,同时跳过基准值,避免重复向数组内加入基准值,将其他元素分别与基准值比较,小的放在left数组,大的放在right数组。然后递归调用快排方法,在左右数组内再次进行快排直到满足条件(子数组长度原创 2024-05-09 21:31:25 · 614 阅读 · 0 评论 -
【前端每日一题】day1——用JS写出两个数组合并成一个数组排序返回
concat() 方法在底层实现时会创建一个新的数组,并将原始数组的元素复制到新数组中,然后将传递给concat()方法的数组的元素依次复制到新数组的末尾。因此,concat() 方法的时间复杂度为 O(n),其中 n 是所有数组元素的总数。sort() 方法的底层实现通常使用一种高效的排序算法(例如快速排序或归并排序),以便在最佳情况下达到 O(n log n) 的时间复杂度。它不会改变现有数组,而是返回一个新数组,其中包含从调用concat()方法的数组中复制的元素,以及任何参数中提供的数组的元素。原创 2024-05-08 21:25:00 · 719 阅读 · 0 评论