js
js 相关知识以及遇到的问题或者案例
六卿
冰冻三尺非一日之寒,愿你事事看开,唯独对美好保持执念。
展开
-
JS实现一键复制、选中复制、选中多行复制
JS实现一键复制、选中复制、选中多行复制原创 2024-02-05 19:15:00 · 1419 阅读 · 0 评论 -
ResizeObserver监听元素大小的变化
ResizeObserver监听元素大小的变化原创 2023-08-22 11:15:49 · 611 阅读 · 2 评论 -
crypto-js中AES的加解密封装
crypto-js中AES的加解密封装原创 2023-08-10 16:49:26 · 785 阅读 · 3 评论 -
前端引入字体文件
前端引入字体文件原创 2023-06-07 16:05:32 · 745 阅读 · 3 评论 -
前端JS截取url上的参数
前端JS截取url上的参数原创 2023-06-03 16:42:32 · 1409 阅读 · 0 评论 -
Blob格式转json格式,拿到后端返回的json数据
Blob格式转json格式,拿到后端返回的json数据原创 2023-05-23 10:56:44 · 3891 阅读 · 1 评论 -
关于递归处理,应该怎么处理,思路是什么?
关于递归处理,应该怎么处理,思路是什么?原创 2023-03-07 11:23:37 · 1168 阅读 · 1 评论 -
前端一键回到顶部案例
前端一键回到顶部案例原创 2022-12-07 15:14:59 · 660 阅读 · 2 评论 -
子组件获取外层组件的scrollTop,达到实时定位的效果
子组件获取外层组件的scrollTop,达到实时定位的效果原创 2022-10-25 16:15:48 · 651 阅读 · 0 评论 -
axios全局做节流,解决多次点击导致多次请求接口
axios全局做节流,解决多次点击导致多次请求接口原创 2022-10-21 09:27:37 · 1516 阅读 · 3 评论 -
伪类中使用element图标
伪类中使用element图标原创 2022-08-15 15:59:15 · 951 阅读 · 0 评论 -
前端项目增加eslint全过程
前端项目增加eslint全过程原创 2022-07-18 13:57:09 · 2063 阅读 · 0 评论 -
js_Ipv4以及ipv4段正则校验
js_Ipv4以及ipv4段正则校验原创 2022-06-17 17:12:26 · 1256 阅读 · 0 评论 -
async和await的错误处理
async和await的错误处理原创 2022-04-07 17:58:16 · 6237 阅读 · 0 评论 -
在一般编写代码时可以不写分号 ; 但是遇到中括号 小括号 模板字符串的时候必须在前面加一个分号,否则会报错。
在一般编写代码时可以不写分号 ; 但是遇到中括号 小括号 模板字符串的时候必须在前面加一个分号,否则会报错。原创 2022-03-23 11:17:08 · 680 阅读 · 0 评论 -
ES6中map对象的使用,确实比Object好使哈
Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。原创 2022-03-11 15:23:26 · 427 阅读 · 0 评论 -
前端base64转Blob,Blob转文件下载
前端base64转Blob,Blob转文件下载原创 2022-03-10 10:40:46 · 1060 阅读 · 0 评论 -
判断对象是否含有改属性,三个方法
一击致命,完结。原创 2022-03-08 15:13:09 · 444 阅读 · 0 评论 -
前端JS读取文件内容并展示到页面上
前端JS读取文件内容并展示到页面上原创 2021-12-16 14:14:23 · 4313 阅读 · 5 评论 -
javaScript中常用的String方法以及注意点总结
String常用API方法:// 1、toLocaleLowerCase 小写// 2、toLocaleUpperCase 大写// 3、charAt num// 4、charCodeAt num// 5、slice start end// 6、substring start end 第一个参数可以为负数,直接将负参数直接转成0// 7、substr start length 第一个参数可以为负数 第二个为负数 自动转为 0// 8、concat// 9、trim 去除首尾空原创 2021-11-24 09:59:43 · 522 阅读 · 1 评论 -
原生撸移动端顶部滚动菜单栏,实现可滚动控制滚动边界动态样式
原生撸移动端顶部滚动菜单栏实现的效果为:可以自由滚动,设置滚动的左边界和有边界html和css为<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA原创 2021-11-13 22:22:26 · 1141 阅读 · 0 评论 -
本地运行打包好的React、Vue项目
live-server 或者 http-servernpm i -g live-server进入react打包好的build文件夹或者vue打包好的dist文件夹cmdlive-server默认在8080端口原创 2021-11-02 10:37:29 · 1074 阅读 · 0 评论 -
js防抖函数返回值问题解决方案
需求:当我们在使用防抖函数的时候会碰到需要使用传入函数的返回值的问题,所以我们配合promise来实现。带有返回值的防抖函数:/** * @param {函数} fn * @param {防抖时间间隔} wait *///防抖函数const debounce = () => { let timer = null; const newDebounce = function(fn, wait, ...args) { return new Promise((r原创 2021-08-25 16:30:30 · 1727 阅读 · 0 评论 -
五子棋小游戏(JS+Node+Websocket)可分房间对战
主要通过js、canvas、node、websocket来实现五子棋游戏。tip:如果你想清楚的了解怎么实现,请一步步看思路流程,文章最后有项目的gitee地址、对应B站视频,可直接食用。原创 2021-08-18 09:50:39 · 8352 阅读 · 15 评论 -
后端返回图片二进制流,前端转base64
后端给了一个图片url:http://localhost:3003/images/0df7f084788cc336e5fb2b2b4e708ed8bgc.jpg但是我们想通过axios来进行请求: axios .get( "http://localhost:3003/images/0df7f084788cc336e5fb2b2b4e708ed8bgc.jpg", ) .then(res原创 2021-08-16 10:53:01 · 2233 阅读 · 2 评论 -
手写JS实现深拷贝函数
实现深拷贝是为了两个对象内存互不干扰。 const deepClone = (obj) => { if (obj instanceof Array) { return obj.map(item => deepClone(item)) } else if (obj instanceof Object) { let temp = {} let keys = Object.keys(obj)原创 2021-08-03 16:37:05 · 471 阅读 · 11 评论 -
&&、|| 的返回值
&&1:全true 返回&&右侧结果;2:左false右true结果false||1:全true 返回&&左侧结果;2:左false右true返回&&右侧结果;具体看下面例子: console.log(11 && 123); //123 console.log(false && 123); //flase console.log(11 || 123); //11 console.log(fa原创 2021-07-27 18:27:15 · 1015 阅读 · 2 评论 -
研究Promise心得总结与思路总结
首先promise 在new的时候会传入一个函数,函数有两个参数,分别是以函数调用的形式返回成功结果和失败结果,在promise中,进入constructor会被立即执行 // executor/执行器 是传进 Promise中的回调函数 constructor(executor) { // 这个回调函数会被立即执行,判断是否应该对状态进行更改 executor(this.resolve, this.reject); }相当于我们传入的两个参数,变成了两个函数,当我门执行的原创 2021-07-06 11:17:13 · 446 阅读 · 7 评论 -
JS判断点击是单击还是双击
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>点击原创 2021-07-01 18:26:19 · 1546 阅读 · 2 评论 -
JS循环for、for...of、for...in
循环数组 let arr = [1, 2, 3, 4, 5, 6, 7, 8] //1 //2 //3 //4 //5 //6 //7 //8 // for for (var i = 0; i < arr.length; i++) { console.log('arr[i]===', arr[i], "===原创 2021-06-25 21:20:09 · 210 阅读 · 0 评论 -
Element table组件封装 核心:父子组件传值、传方法
element最近在APP上使用了element的表格,原因是vant上没table组件,所以在element的基础上简单的封装了一个组件组件 tableElem.vue<template > <el-table id="immunityTadle" size="mini" :data="tableData" border :max-height="clientHeight" style="width: 100vw" @r原创 2021-06-24 11:04:47 · 3030 阅读 · 6 评论 -
JS基础 if和switch区别
if let flag = 1 >2 ? true : false if(flag){ console.log('我是true==='); }else{ console.log('我是false==='); } if(1>2){ console.log('我是1>2==='); }else if(4>3原创 2021-06-23 19:59:12 · 514 阅读 · 4 评论 -
html5 video
videohtml <video src="https://vd2.bdstatic.com/mda-mfm2xk18c3m40aya/sc/cae_h264/1624327792685879275/mda-mfm2xk18c3m40aya.mp4?v_from_s=hkapp-haokan-tucheng&auth_key=1624346114-0-0-22f5e51fdeac02bf7bf66921ed71c55c&bcevod_channel=searc原创 2021-06-22 16:30:01 · 1051 阅读 · 4 评论 -
JSON.stringify undefined自动过滤
JSON.stringifyJSON.parse let obk = { name:"zjq", age:"", habby:undefined, run:null, arr:[{arrr:undefined}] } let aa = JSON.stringify(obk) console.log(aa); console.log(JSON.par原创 2021-06-22 11:04:52 · 1474 阅读 · 2 评论 -
ES6解构赋值
对象 let obj = { name: "zjq", age: "18", myhabby: { habby1: '唱歌', habby2: "跳舞", habby3: "篮球" } } let { name, age, myhabby } = obj原创 2021-06-21 22:50:54 · 225 阅读 · 3 评论 -
Vue3基础(十qi)___安装使用axios
下载axiosnpm i axios --save引入main.js下面标注 1==》2import { createApp } from 'vue'import App from './App.vue'import './index.css'import axios from 'axios' //1 引入import { createRouter, createWebHashHistory } from 'vue-router'const HelloWorld = () =>原创 2021-06-20 00:18:44 · 483 阅读 · 2 评论 -
JS事件委托
事件委托将事件委托给父级执行,这样在子级比较多的时候就可以不必为每一个自己增加相同功能的事件<template > <div class="container"> <ul @click="zjqFun"> <li v-for="item in obj" :key="item">{{item}}</li> </ul> </div></template><script原创 2021-06-18 16:30:59 · 193 阅读 · 4 评论 -
JS之concat方法
concat我们用于拼接数组,参数可以是字符串、数字、对象或者数组let arr = [1,2,3]arr.concat([2,3,4,5,6],1234,5678,90,24,[22,[2345]])let arr = [1,2,3]arr.concat(...[2,3,4,5,6],1234,5678,90,24,[22,...[2345]],{a:1},'aaa',true)...原创 2021-06-16 10:48:13 · 970 阅读 · 8 评论 -
JS的几种继承方式
JS的几种继承方式原创 2021-06-15 20:41:58 · 156 阅读 · 3 评论 -
Vue在子组件中判断父组件是否传来事件
vm.$listenersgetPullPageBottom 父级传来的事件名(我自己定义的事件名,自己写自己的)@父级传来的事件名 = ”父级事件“在子组件打印 console.log(this.$listeners['getPullPageBottom'],'111')有的话 ,会打印函数体没有的话,会打印undefined//this.$listeners['getPullPageBottom'] if (!this.$listeners['getPullPageB原创 2021-06-11 17:52:02 · 3759 阅读 · 8 评论