js
aminwangaa
终究是走上了勤能补拙的路~~~
展开
-
实现Vue组件库
Vue组件库是一种常见的前端工具,可以提供可复用的UI组件来简化应用程序的开发和维护。本文将介绍如何实现一个基本的Vue组件库。原创 2023-02-24 08:45:26 · 1415 阅读 · 0 评论 -
【JS排序】
JS排序之快速排序,冒泡排序,插入排序原创 2023-02-12 20:49:58 · 83 阅读 · 0 评论 -
树结构数据筛选
const treeData = [ { label: '根目录', value: 1, children: [ { label: '一级目录1', value: 11, children: [ { label: '二级目录1', value: 111, children: [ {原创 2021-09-24 13:22:42 · 550 阅读 · 0 评论 -
for in和 for of区别
for in遍历对象enumerable为true的键let obj = { name: "zf", age: 10}for (let i in obj) { console.log(i)}// name age// 可通过Object.defineProperty 修改 enumerable属性Object.defineProperty(obj, "name", { enumerable: false })for (let i in obj) { console.log(原创 2021-03-31 15:28:23 · 85 阅读 · 0 评论 -
Symbol见个面
Symbol.hasInstance判断一个实例是否属于某个类,实例通过instanceof判断, 类通过Symbol.hasInstance判断,可以通过修改类的Symbol.hasInstance函数修改逻辑class Bar{}class Baz extends Bar {}let b = new Baz()console.log(b instanceof Bar) // trueconsole.log(b instanceof Baz) // trueconsole.log(Ba原创 2021-03-31 11:00:48 · 69 阅读 · 0 评论 -
Symbol.iterator实现for of遍历对象
var people={ name:'test', sex:'male', hobbies:['ball','paint','sing'], [Symbol.iterator](){ const _this=this; const keys = Reflect.ownKeys(_this) // 获取到对象的key值列表 let index=0; return { next(){原创 2021-03-23 11:30:38 · 196 阅读 · 0 评论 -
debounce useDebounce throttle useThrottle练习2
useDebounceconst useDebounce = <T>(value: T, interval: number = 200) => { const [debounceValue, setDebounceValue] = useState<T>(value) useEffect(() => { let timer = setTimeout(() => { setDebounceValue(value) }, interval)原创 2021-01-06 13:53:17 · 278 阅读 · 0 评论 -
Promise 练 2
const PENDING = "PENDING"const REJECTED = "REJECTED"const FULFILLED = "FULFILLED"const resolvePromise = (promise, x, resolve, reject) => { if (promise === x) { throw TypeError("TypeError") } let called = false if (x != null && ["objec原创 2021-01-06 11:43:23 · 77 阅读 · 0 评论 -
debounce useDebounce throttle useThrottle练习
健忘 健忘 健忘useDebounceconst useDebounce = <T>(value: T, interval: number = 200) => { const [debounceValue, setDebounceValue] = useState<T>(value) useEffect(() => { const timer = setTimeout(() => { setDebounceValue(() => va原创 2021-01-05 11:16:04 · 215 阅读 · 0 评论 -
Array(数组)
创建一个数组let arr = [] // []let arr = new Array() // []let arr = new Array(2) // [empty*2]let arr = new Array(2).fill("") // ["", ""]数组的方法// 不改变原数组// slice 截取let arr = [1, 2, 3, 4]let target = arr.slice(0, 2) // 从索引0开始 截取两个console.log(target) // [1,原创 2020-09-19 13:38:53 · 195 阅读 · 0 评论 -
JS 基本数据类型(待完善)
分类基本数据类型引用数据类型基本数据类型String 字符串Number 数字Boolean 布尔Null: 没有Undefined: 未定义symbol: 表示独一无二的值代码块中的例子用的时候 注释一下前面使用过的例子字符串(常用方法)let type = typeof "text"console.log(type) // string// 获取字符串长度 lengthlet str = "这是一个字符串"let strLen = str.lengthco原创 2020-09-11 10:51:48 · 81 阅读 · 0 评论