- 博客(7)
- 收藏
- 关注
原创 判断数组内是否存在含有某个属性的对象
function isExist(arr,obj,attr){ for(let i=0;i<arr.length;i++){ if(arr[i][attr] === obj[attr]){ return true } } return false}
2022-03-10 15:56:44
346
原创 用CSS实现二级菜单
之前做案例时,在二级菜单那里卡了很长时间,现整理出来,共享一下首先无论做三级菜单还是二级菜单时,第一步的思路就是把所有的菜单都显示出来,然后再去做相关的隐藏的操作;那么二级菜单又分是,竖着排还是横着排两种,先说第一种竖着排。二级菜单竖着排,是把二级菜单写入一级菜单的li里面,这样,二级菜单的宽就是一级菜单li的宽,之后的二级菜单里面的li元素会自动被挤到下面去,从而显示竖直排列的效果。...
2020-09-01 14:05:03
2492
原创 react之Hooks用法小结
很多公司现在慢慢使用hooks配合ant-design来进行开发,并且结合ts。下面引用一篇文章来谈谈自己的理解。1、useState用来保持组件状态因为hooks使用的前提是一个函数组件,但是函数组件里面又没有this,import React, { useState } from "react";function App() { const [obj, setObject] = useState({ count: 0, name: "alife" }); r.
2020-08-31 23:08:34
987
原创 前端常见面试题
1、map和forEach的区别?map和forEach都是对数组的遍历,但是他们是有区别的,forEach()方法不会返回执行结果,而是undefined。也就是说,forEach()会修改原来的数组。而map()方法会得到一个新的数组并返回。例如,在react经常需要使用数据进行渲染元素的时候,那么这时候,我们就需要使用map了,返回一个新的元素的数组进行渲染。而forEach就是不需要返回新的数据,需要在原数组的每一项上修改的时候,我们经常会用到。2、redux的工作流程?简明来说
2020-08-13 08:43:42
561
原创 封装多属性的运动函数
在学习JS中,我们经常会遇到一些动画效果,那么这时候我们就用到了运动,这里我们来封装一个多属性的运动函数,以便我们之后需要的时候,拿来直接调用即可。funcation(ele,attr_options,callback,timingfunction = "swing",speed){ //这里的ele是运动的元素,attr_options是元素运动的目标和属性,callback是回...
2020-03-22 07:31:22
1558
原创 什么是事件委托
什么是事件委托呢?字面意思,通俗地来讲,就是把一个元素响应事件(click、keydown......)的函数委托到另一个元素;因为其的事件冒泡性质机制,会把一个或者一组元素的事件委托到它的父层或者更外层元素上,真正绑定事件的是外层元素,当事件响应到需要绑定的元素上时,会通过事件冒泡机制从而触发它的外层元素的绑定事件上,然后在外层元素上去执行函数。事件委托的优点:1. ...
2020-03-15 17:55:22
1232
原创 JavaScript之桶排序
桶排序的中心思想是:无论数组的数据怎样胡乱,但是数组的数组下标进行排序是有序的。这里我们可以先来设定好一个简单的数组: var arr = [12,5,6,8,1,4]通常我们我要根据数组内的数据的范围来设置“桶的范围”。但是Javascript可以创建对应数量的桶。我们需要一个承载下标的容器 var bocket = { };接下来我们需要遍历原数组,将原数组放入“桶”中;...
2020-03-08 22:38:17
270
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人