
JavaScript
小熊代码加
键盘虐待者
展开
-
Service worker是什么?
Service worker原创 2023-02-23 16:59:42 · 1233 阅读 · 0 评论 -
浏览器中进程和线程的理解
进程和线程原创 2023-02-23 16:57:16 · 236 阅读 · 0 评论 -
ES6中对象的一些拓展
ES6原创 2023-02-23 16:49:05 · 396 阅读 · 0 评论 -
JavaScript中的数组有哪些常用的方法?
JavaScript原创 2023-02-23 16:34:29 · 81 阅读 · 0 评论 -
WebSocket如何兼容低版本浏览器?
WebSocke原创 2023-02-23 16:23:54 · 467 阅读 · 0 评论 -
获取英文状态日期
获取英文状态日期原创 2022-07-12 13:45:28 · 458 阅读 · 0 评论 -
.reduce()方法
reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组。...原创 2022-06-30 15:17:11 · 232 阅读 · 0 评论 -
Vue实现Enter键查询
单个条件:@keyup.enter.native="CurrentChange(1)"@submit.native.prevent多个条件:创建时监听:window.addEventListener('keydown',this.handleKeyDown,true);//开启键盘监听模式触发: handleKeyDown(e){ let key = null; if(window.event === undefined){ key = e.ke原创 2022-05-10 16:43:17 · 609 阅读 · 0 评论 -
Vue3和Vue2的组件通信
Vue3 组件通信方式props$emitexpose / ref$attrsv-modelprovide / injectVuexmittVue3 通信使用写法:props用 props 传数据给子组件有两种方法,如下// Parent.vue 传送<child :msg2="msg2"></child><script setup> import child from "./child.vue" import { ref,原创 2022-04-28 10:10:46 · 421 阅读 · 0 评论 -
js获取当天0点时间兼容ie写法
//当前时间let time = new Date();//当天0点(京8时区写法)let day = time - time % (24 * 60 * 60 * 1000) - 8 * 60 * 60 * 1000;网上大部分的写法是new Date( new Date( new Date().toLocaleDateString() ).getTime() );在IE上获取到的是NaN...原创 2021-12-29 14:45:57 · 989 阅读 · 6 评论 -
正则替换富文本图片url
context.replace(/<img [^>]*src=['"]([^'"]+)[^>]*>/gi, (match, p1) => { return `<img src='${p1.indexOf('http') > -1 ? p1 : baseUrl + p1}' />` })下面的正则表达式会全局匹配所有img标签:/<img [^>]*src=['"]([^'"]+)[^>]*>原创 2021-12-22 15:44:19 · 936 阅读 · 0 评论 -
js 获取一个月有多少天的方式
方法一:new Date()第3个参数默认为1,就是每个月的1号,把它设置为0时, new Date()会返回上一个月的最后一天,然后通过getDate()方法得到天数function getMonthDay(year, month) { let days = new Date(year, month + 1, 0).getDate() return days}方法二:可以把每月的天数写在数组中,再判断时闰年还是平年确定2月分的天数function getDays(year, month)原创 2021-11-30 16:56:53 · 15904 阅读 · 10 评论 -
uniapp 轮播示例
<template> <view class="content"> <view class='home'> <swiper indicator-dots circular autoplay interval=3000 > <swiper-item v-for="(item,index) in swipers" :key="index"> <image :src="item">原创 2021-11-25 09:52:54 · 744 阅读 · 0 评论 -
postcss-px-to-viewport 适配 uniapp
参考:https://uniapp.dcloud.io/component/page-meta?id=page-metamodule.exports = { css: { loaderOptions: { postcss: { plugins: [ require(‘postcss-px-to-viewport‘)({ unitToConv原创 2021-11-09 11:27:53 · 3413 阅读 · 4 评论 -
小程序中运用到echarts图表,在echarts图标上进行拖动上划有时echarts图表隐藏掉?
处理:1.主要是鼠标触发提示框导致的,可设置tooltip: { triggerOn: ‘click’ }2.设置tooltip{ animation: false, }原创 2021-10-27 08:42:41 · 455 阅读 · 0 评论 -
JavaScript 树形结构数组处理之递归
一.经典示例var data = [ { name: "所有物品", children: [ { name: "水果", children: [{name: "苹果", children: [{name: '青苹果'}, {name: '红苹果'}]}] }, { name: '主食', children: [原创 2021-10-14 13:42:48 · 2054 阅读 · 0 评论 -
阿里云播放器组件 vue-aliplayer
一.第一步:首先在项目目录下安装阿里云视频插件npm install vue-aliplayer -S二.配置AliPlayer.vue路由三.在index.html里引入js四.Aliplayer详情如下代码参考地址:https://player.alicdn.com/aliplayer/tutorial/tutorial.html全局引入步骤:安装npm install vue-aliplayer -Syarn add vue-aliplayer -S使用import VueA原创 2021-09-26 15:44:55 · 2710 阅读 · 0 评论 -
input获取焦点并全选内容
实现:HTML:< el-input v-model="olde" @focus=" focus($event)"></ el-input>JS:focus( event) { event.currentTarget. select();}注意:尝试过uniapp中小程序和APP不适用。原创 2021-08-20 16:02:20 · 3495 阅读 · 0 评论 -
JavaScript reduce() 方法
定义和用法reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。reduce() 可以作为一个高阶函数,用于函数的 compose。注意: reduce() 对于空数组是不会执行回调函数的。语法array.reduce(function(total, currentValue, currentIndex, arr), initialValue)...原创 2021-08-20 15:56:36 · 78 阅读 · 0 评论 -
关于移动端vue项目的rem适配
安装postcss-pxtoremnpm install postcss-pxtorem --save新建rem.js文件const baseSize = 32// 设置 rem 函数function setRem () { // 当前页面宽度相对于 750 宽的缩放比例,可根据自己需要修改。 const scale = document.documentElement.clientWidth / 750 // 设置页面根节点字体大小 document.d..原创 2021-07-30 17:40:27 · 160 阅读 · 0 评论 -
uniapp中this的指向问题
原创 2021-07-12 14:13:07 · 1590 阅读 · 0 评论 -
推荐几个图片素材网站
1.https://www.pexels.com2.https://pixabay.com3.https://unsplash.com4.https://www.hippopx.com5.http://streetwill.co6.http://www.polayoutu.com7.https://gratisography.com8.https://www.freestockimages.ru9.https://visualhunt.com10.https://magdeleine.co原创 2021-07-12 13:49:49 · 1390 阅读 · 0 评论 -
手机淘宝——flexible.js 移动端自适应方案
一,flexible.js 的使用方式:github地址:https://github.com/amfe/lib-flexible官方文档地址:https://github.com/amfe/article/issues/17本文中有部分内容引至上面这个文档。(一),引用方式1,引用cdn地址 <script src="http://g.tbcdn.cn/mtb/lib-flexible/0.3.2/??flexible_css.js,flexible.js" >转载 2021-07-08 17:44:10 · 2771 阅读 · 0 评论 -
rem.js
// rem等比适配配置文件// 基准大小const baseSize = 1let rem;// 设置 rem 函数function setRem () { // 当前页面宽度相对于 1920宽的缩放比例,可根据自己需要修改。 const scaleX = document.documentElement.clientWidth / 1920 const scaleY = document.documentElement.clientHeight / 1080 // 需要取缩放.原创 2021-07-08 17:40:07 · 845 阅读 · 0 评论 -
Object.keys()
一、语法Object.keys(obj)参数:要返回其枚举自身属性的对象返回值:一个表示给定对象的所有可枚举属性的字符串数组二、处理对象,返回可枚举的属性数组let person = {name:"张三",age:25,address:"深圳",getName:function(){}}Object.keys(person) //["name", "age", "address","getName"]三、处理数组,返回索引值数组let arr = [1,2,3,4,5,.原创 2021-07-01 09:23:13 · 110 阅读 · 0 评论 -
播放器 dplayer.js.org
安装使用npm:npm install dplayer --save使用纱线:yarn add dplayer#快速开始首先,让我们初始化一个最简单的DPlayer加载DPlayer文件<div id="dplayer"></div><script src="DPlayer.min.js"></script>或与模块捆绑器一起使用:import DPlayer from 'dplayer';...原创 2021-05-25 14:30:54 · 1445 阅读 · 0 评论 -
反调试--阻止页面不断debugger
实现很简单:(function() {var a = new Date(); debugger; return new Date() - a > 100;}())解决也很简单:Chrome控制台的Source Tab页,点击Deactivate breakpoints按钮或者按下Ctrl + f8提醒:会的防不住,不会的不用防。...原创 2021-01-06 17:40:14 · 1551 阅读 · 0 评论 -
2020-12-18T16:51:56+08:00 时间转换方法
dateFormat(fmt, date) { let ret=""; date=new Date(date); const opt = { 'Y+': date.getFullYear().toString(), // 年 'm+': (date.getMonth() + 1).toString(), // 月 'd+': date.getDate().toString(), // 日 'H+': dat.原创 2020-12-17 11:46:12 · 5876 阅读 · 1 评论 -
Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location:
解决办法:在包含这句代码Vue.use(Router)的文件中加入如下代码:import Router from 'vue-router'Vue.use(Router)const originalPush = Router.prototype.pushRouter.prototype.push = function push(location) { return originalPush.call(this, location).catch(err => err)}...原创 2020-09-29 09:49:55 · 756 阅读 · 0 评论 -
数组去重
1.set与解构赋值去重:function unique(arr) { if (!Array.isArray(arr)) { console.log('type error!') return } return [...new Set(arr)]}2.set与Array.from:function unique(arr) { i...原创 2020-01-09 10:47:34 · 166 阅读 · 0 评论 -
兼容性处理Edge变态显示
在ie高版本浏览器和edge浏览器里type为text和password的input框在输入时右边会出现×和眼睛。如果需要清除,方法如下:首先在页面头部声明兼容性模式 <meta http-equiv="X-UA-Compatible" content="IE=edge ; IE=11"> X-UA-Compatible是自从IE8新加的一个设置,对于IE8以下的浏...原创 2020-01-02 14:47:32 · 1138 阅读 · 0 评论 -
原生基础
1.0 DOM结构 1.1先来看结构图: 父节点 兄弟节点 当前节点 属性节点 子节点 兄弟节点一般任意一个节点我们都会从父节点,子节点,以及兄弟节点的角度去考察。节点一般我们只需关注元素节点,属性节点及文本节点即可。 1.2 节点的相关属性(只读的)1.2.1 nodeType 属性规定节...转载 2018-07-05 16:41:48 · 240 阅读 · 0 评论 -
HTML5 进阶系列:拖放 API 实现拖放排序
前言HTML5 中提供了直接拖放的 API,极大的方便我们实现拖放效果,不需要去写一大堆的 js,只需要通过监听元素的拖放事件就能实现各种拖放功能。想要拖放某个元素,必须设置该元素的 draggable 属性为 true,当该属性为 false 时,将不允许拖放。而 img 元素和 a 元素都默认设置了 draggable 属性为 true,可直接拖放,如果不想拖放这两个元素,把属转载 2017-11-22 10:46:42 · 292 阅读 · 0 评论 -
【JS】类型检测
前言js 中的类型检测也是很重要的一部分,所以说这篇文章我们就来讲一下怎么对 JavaScript 中的基本数据类型进行检测。其实这也是在读 Zepto 源码中学习到的,所以阅读源码对我们的提升还是很有帮助的。本文基于参考了前辈们的文章之后个人理解此文写的有不当的地方,请各位大佬指正。其实常规方法主要有四种1、typeof2、instanceof3、Object.p转载 2017-11-03 23:49:34 · 931 阅读 · 0 评论 -
函数中的this的四种绑定形式
正文javascript中的this和函数息息相关,所以今天,我就给大家详细地讲述一番:javascript函数中的this一谈到this,很多让人晕晕乎乎的抽象概念就跑出来了,这里我就只说最核心的一点——函数中的this总指向调用它的对象,接下来的故事都将围绕这一点展开(提醒前排的筒子们准备好茶水和西瓜,我要开始讲故事啦!!)【故事】有一个年轻人叫”迪斯”(thi转载 2017-11-09 14:29:17 · 6985 阅读 · 1 评论 -
前端面试中的常见的算法问题
虽说我们很多时候前端很少有机会接触到算法。大多都交互性的操作,然而从各大公司面试来看,算法依旧是考察的一方面。实际上学习数据结构与算法对于工程师去理解和分析问题都是有帮助的。如果将来当我们面对较为复杂的问题,这些基础知识的积累可以帮助我们更好的优化解决思路。下面罗列在前端面试中经常撞见的几个问题吧。Q1 判断一个单词是否是回文?回文是指把相同的词汇或句子,在下文中调换位置或颠倒转载 2017-10-31 16:50:19 · 1052 阅读 · 0 评论 -
强类型 JavaScript 的解决方案
作者: 阮一峰JavaScript 是一种弱类型(或称动态类型)语言,即变量的类型是不确定的。x = 5; // 5x = x + 'A'; // '5A'上面代码中,变量x起先是一个数值,后来是一个字符串,类型完全由当前的值决定,这就叫弱类型。弱类型的好处是十分灵活,可以写出非常简洁的代码。但是,对于大型项目来说,强类型更有利,可以降低系统的复杂转载 2017-10-30 13:52:42 · 319 阅读 · 0 评论