- 博客(133)
- 收藏
- 关注
原创 javacript的循环每次都是瞬间执行,休眠函数是个好的选择
问题:每隔一秒输出一个数字。我们的js代码大概是这样的for(var i = 0; i < 3; i++) { setTimeout(function () { console.log(i); }, 1000);};运行这段代码会发现,程序在1秒后输出了3个3。(不但没有每隔一秒输出,而且输出的数字还全都是3)问题解决 var start = (new Date()).getTime(); while((new Date()).getTime() - start &
2023-06-23 00:50:01 217
原创 处理需要application/x-www-form-urlencoded的axios 请求
【代码】处理需要application/x-www-form-urlencoded的axios 请求。
2023-03-08 11:19:17 366 1
原创 javaScript算法 查找字符串中某字符连续出现的次数
let s = '0111100', reg = /(.)\1*/g, r = {}, x;x = s.match(reg);if(x){ for(let i = x.length - 1; i > -1; i--){ if(!r[x[i][0]]) r[x[i][0]] = x[i].length; else r[x[i][0]] = Math.max(r[x[i][0]], x[i].length) }};x = [];for(var p
2022-04-16 14:50:19 818
原创 JavaScript根据数组对象中的某个值进行排序
let sortId = function (id1, id2) { let val1 = id1.id//需要排序的某个值比如id let val2 = id2.id if (val1 < val2) { return -1 } else if (val1 > val2) { return 1 } else { .
2022-04-11 14:42:23 1115
原创 javaScript字符串指定截取添加间隔
let splitFn = (length, str) => {//length:需要截取的长度,str://需要截取的字符串 let reg = new RegExp('[^\n]{1,' + length + '}', 'g') let res = str.match(reg) return res.join('.') }
2022-04-11 14:31:31 1089
原创 我用nodejs的自动化获取了自己CSDN账号的数据
1.安装 npm install seleium-webdriver / yarn add seleium-webdriver 下载:https://chromedriver.storage.googleapis.com/index.html?path=99.0.4844.35/2.
2022-03-03 09:42:14 94
原创 scroll自适应滚动条
<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <titl
2022-02-25 08:59:01 297
原创 面试官:css中display属性和transition属性冲突 如何解决?
面试官:我想要设置过渡属性 , 但是我使用了display:none;导致该效果无法生效,该如何解决?张三:display:none的时候,元素从页面文档中消失了,display:block才会显示。transition无法对一个时有时无的元素进行过渡效果。可以用visibility或者opacity替代display.box { width: 100px; height: 100px; background-color: yellow; // display: none; opac
2022-02-16 14:41:54 828
原创 使用node获取高德天气
1.首先申请好自己密钥,其次是需要先请求地理/逆地理编码的API 再请求天气查询的接口https://lbs.amap.com/api/webservice/guide/api/weatherinfo2.然后利用axios请求库来请求接口(要注意ctx.body无法展示给前端的问题)const axios = require('axios')function getApi(address) { return new Promise((resolve) => { axios
2022-02-11 16:43:35 819 1
原创 31条JavaScript小技巧
1.全部替换let example = "aaa bbb aaa";console.log(example.replace(/aaa/g,"AAA");2.过滤错误值let example = [0,1,undefind,6,7,'',false];example.filter(Boolean)console.log(example)3.初始化数组const array =Array(9).fill("");4.数组求和let array =[3,5,6,7,8];array.r
2022-02-09 17:23:49 672
原创 计算程序运行时间
/** * @计算运行时间 * @returns */let show_site_runtime = ()=>{ window.setTimeout("show_site_runtime()",1000); // 每秒运行一次函数 let X=new Date("01/20/2022 00:00:00"); //在这里修改你的建站时间 let Y=new Date(); let T=(Y.getTime()-X.getTime()); // 获取当前时间与指定时间之间的时间间隔(
2022-01-24 11:37:39 346
原创 部署node+mongodb+vue3到阿里云杂记 -- ubuntu18
Xshell7命令:官网下载node的linux的安装包 https://nodejs.org/zh-cn/download/apt install lrzsz(出现报错需要执行:apt-get update apt-get upgrade ) // yum -y install lrzsz =》centos安装ubuntu结果提示“-bash: rz: command not found”rz命令没找到?执行sz,同样也没找到。安装lrzsz:yum -y install lrz.
2022-01-18 15:43:12 2619
原创 记录一次 无法做出来的面试题
输入let arr = [ {id: 1, name: '部门1', pid: 0}, {id: 2, name: '部门2', pid: 1}, {id: 3, name: '部门3', pid: 1}, {id: 4, name: '部门4', pid: 3}, {id: 5, name: '部门5', pid: 4},]输出[ { "id": 1, "name": "部门1", "pid": 0,
2022-01-10 10:25:10 1431
原创 vue3 富文本编辑器 tinymce
yarn add @tinymce/tinymce-vueyarn add tinymcetinymce中文文档地址(不全):tinymce.ax-z.cn/tinymce英文原版文档地址:www.tiny.cloud/docs/demo/复制node_modules/tinymce目录下所有文件至public/目录下<template> <div class="tinymce-boxz"> <Editor v-model="content" :api
2021-12-24 17:41:19 1026
原创 vue源码v-model双向数据绑定
原理:输入数据 ->劫持->更新渲染到dom上…html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initia
2021-11-01 00:32:52 70
原创 JavaScript设计模式
// author:pandaHe// time:2021.10.27// tips:reading sharing ~~// -- 1 -- DES:{工厂模式}function Animal(opts) { let obj = new Object(); obj.color = opts.color; obj.name = opts.name; obj.getInfo = function () { return "名称:" + obj.name + "颜色:" + .
2021-10-27 16:55:39 62
原创 javaScript向数组中添加元素的6种方法
1.Array.push() 追加到后面 – 原数组let arry = [1,2,3,4];array.push(5,6)2.Array.unshift()追加到前面 – 原数组let array = [1,2,3,4];array.unshift(2,4)3. Array.splice(索引位置,个数,添加的元素) – 原数组let array = [1,2,3,4,5];array.splice(array.length,0,6,8,9);//第二个参数为0的时候,是可以添加参数的
2021-09-12 23:27:31 44578 1
原创 vue源码 -- 数据驱动 --模拟{{}}
#数据驱动模型vue的执行流程1.获得模板:模板中有位置2.利用Vue构造函数中所提供的数据来填充模板的位置,得到可以在页面中显示的“标签”了。3.将标签替换页面中原来位置的标签Vue利用我们提供的数据和页面中模板生成了一个新的HTML标签(node元素),替换到了页面中放置模板的位置(元素整个被替换掉) 流程:DOM – 字符串模板-- VNode – 真正的DOM简单模拟<!DOCTYPE html><html lang="en"><head>
2021-09-12 21:36:43 103
原创 记录uniapp字节跳动小程序支付宝的炕CD0015
1.使用uni.app在电脑本机上测试唤起支付宝,支付二维码都是无异常的当把抖音小程序选为体验版后,无法唤起并且报参数错误使用官方的方法就可以解决,给后面遇到问题的兄弟。。。。tt.pay({ provider:'wxpay', service:5, orderInfo:{"order_id":"7006603597467109670","order_token":"CgwIARDiDRibDiABKAESTgpMQJwGys9rnKSvjLHCZytgzJcPJgvW
2021-09-11 17:55:52 617
原创 uniapp的多重数据结构 点击获取值
记录一次,点击无法获取当前值;::原因为inex值的重复使用和冲突 所导致点击获取不到点击当前值;注意 !多层嵌套数据不可以有相同的index值 <view > <view class="wrapper" v-for="(item,index) in moreTheme" :key="index"> <view class="title"> {{item.title}}
2021-09-09 11:27:25 531
原创 微信小程锚点定位、右侧滑动左侧跟随滑动
<view class="page"> <import src="../../components/catering-item/catering-item.wxml" /><!-- 左侧滚动栏 --><view class='under_line'></view><view class="body"><view style='float: left' class='left'> <scroll-view s
2021-08-20 08:47:13 311
原创 微信小程序 授权出现偶尔失效而导致报错
getPhoneNumber后方法里面执行wx.login,于是导致code偶尔失效,报错改为onLoad 就执行wx.login获取codeonLoad:function (options) {let that =this;wx.login({success: res =>{that.data.code = res.code}})},最后完美解决!
2021-08-13 21:09:45 389
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人