自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(104)
  • 收藏
  • 关注

原创 算法02-二维数组中的查找

简单算法题

2022-07-13 16:32:05 240

原创 算法01-数字在升序数组中的出现次数

算法简单题

2022-07-13 15:40:16 206

原创 16进制和透明度对照表

懒得算了,保存一下const alphaHexMap = { '1.00':'FF', '0.99':'FC', '0.98':'FA', '0.97':'F7', '0.96':'F5', '0.95':'F2', '0.94':'F0', '0.93':'ED', '0.92':'EB', '0.91':'E8', '0.90':'E6', '0.89':'E3', '0.88':'E0', '0.87':'DE',

2021-11-04 11:12:47 837

原创 一个跑马灯效果

let timer=null let translateHeight=0; let scrollHeight=0; let itemHeight=0; const scrollUp=(ele)=>{ if(translateHeight%itemHeight==0){ clearInterval(timer); setTimeout(()=>scrollMove(ele),1000); .

2021-09-01 20:19:18 195

原创 Js回收机制原理

存在意义JS的垃圾回收机制是为了以防内存泄漏,内存泄漏的含义就是当已经不需要某块内存时这块内存还存在着,垃圾回收机制就是间歇的不定期的寻找到不再使用的变量,并释放掉它们所指向的内存。在JS中,JS的执行环境会负责管理代码执行过程中使用的内存。可达性JavaScript 中内存管理的主要概念是可达性。有一组基本的固有可达值,由于显而易见的原因无法删除。例如:本地函数的局部变量和参数当前嵌套调用链上的其他函数的变量和参数全局变量还有一些其他的,内部的这些值称为根。如果引用或引用链

2021-08-10 21:00:29 1856

原创 ios 父元素 border-radius元素 overflow:hidden失效问题 iPhone ios 苹果兼容问题

一个小坑,是一个滑动效果,border-radius和overflow:hidden在ios系统下的小程序的兼容。真机起效果了.mini-pay-scroll-cotainer{ -webkit-backface-visibility: hidden; -webkit-transform: translate3d(0, 0, 0);}

2021-07-27 18:29:54 473

原创 react学习-redux

reduxRedux要求我们通过action来更新数据:所有数据的变化,必须通过派发(dispatch)action来更新;action是一个普通的JavaScript对象,用来描述这次更新的type和content reducer是一个纯函数;reducer做的事情就是将传入的state和action结合起来生成一个新的state;eg:const redux=require('redux')const initialState={ counter:0}//reduce

2021-03-09 20:06:22 73

原创 小程序学习-03

路由跳转跳转到tabBar wx.switchTab({ url: '../index/index', })跳转到非tabBar页面且不返回可在登录页面用 wx.redirectTo({ url: '../login/login', })跳转到非tabBar页面且可以返回 wx.navigateTo({ url: '../addcustomer/addcustomer', })...

2021-03-08 20:00:05 267 1

原创 React学习-03组件间的通信

父子组件的通信父传子组件import React, { Component } from 'react' class ChildCpn extends Component { constructor(props){ super(props); } render() { console.log(this.props) const {name,age}=this.props; return (

2021-03-08 16:20:45 76

原创 小程序学习-02

小程序组件表单组件【注】原生小程序中下拉框数据需要回写<view class="content"> <form bindsubmit="formsubmit"> <view class="input"> 姓名 <input class="input-name" name="customerName" /> </view> <view class="input"> 年龄 <input cl

2021-03-05 17:31:30 97

原创 小程序学习-01

小程序初识注册AppIDvscode开发微信小程序初识app.json中的tobar配置注册AppID或者使用测试号,如果需要上线需要注册AppIDvscode开发微信小程序参考下文,在vscode中放插件,在微信开发者工具中调试https://blog.csdn.net/weixin_42216818/article/details/104259390初识这里是注册页面的地方,每个页面在这里会有显示app.json中的tobar配置{ "pages":[ "pages/i

2021-03-05 14:30:11 536 1

原创 React学习-02

react脚手架类组件函数组件react的生命周期类组件import React from 'react';export default class App extends React.Component{ constructor(props){ super(props); this.state={ counter:0 } } dec(){ this.setState({

2021-03-05 14:30:05 229 1

原创 React学习-01

react初识简介react例子jsxJSX的书写规范:jsx注释jsx绑定属性active 切换style属性this绑定问题条件渲染实现v-show效果列表渲染列表过滤截取简介依赖三个库react:核心代码react-dom:react渲染在不同平台所需的核心代码babel:将jsx转换成Reactreact例子class App extends React.Component{ constructor(){ super(); this.state=

2021-03-03 19:35:49 330

原创 TypeScript学习

TS初识hellowordTs中的数据类型基本类型数组类型类型推断联合类型接口定义函数类型别名枚举类型类泛型hellowordfunction hello() { console.log('helloword');}hello();编译:tsc hello.tsTs中的数据类型基本类型let isDone:boolean =false;//布尔型let num:number=10;//数值类型let str:string="123" //字符串定义function

2021-03-03 10:13:05 232

原创 javascript-二叉树

二叉树二叉树(Binary Tree)也称为二分树、二元树或对分树等。它是n(n≥0)个有限元素的集合,该集合或者为空,或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成。当集合为空时,称该二叉树为空二叉树。重要性质性质1:一棵非空二叉树的第i层上最多有2i-1个结点(i≥1)。性质2:一棵深度为k的二叉树中,最多具有2k-1个结点,最少有k个结点。性质3:对于一棵非空的二叉树,度为0的结点(即叶子结点)总是比度为2的结点多一个,即如果叶子结点数为n0,度数为2

2020-09-25 11:02:57 370

原创 Commonjs和ES6模块化的区别

Commonjs和ES6模块化的区别Commonjs:主要实践者为Nodejs1、commonjs模块输出的是值的拷贝,被模块缓存,在另一个模块可以修改赋值,当输出的是基本数据类型的时候,修改时不会影响到相应模块的值,当输出的是引用类型的值时,此时是浅拷贝,共享一个对象的地址,修改时会影响其他相关模块中的值。2、当使用require命令加载某个模块时,就会运行整个模块的代码。当使用require命令加载同一个模块时,不会再执行该模块,而是取到缓存之中的值。也就是说,Commonjs模块无论加载多少次,

2020-09-21 11:47:30 888

原创 javascript-链表

链表链表:链表实际上是线性表的链式存储结构,与数组不同的是,它是用一组任意的存储单元来存储线性表中的数据,存储单元不一定是连续的,且链表的长度不是固定的,链表数据的这一特点使其可以非常的方便地实现节点的插入和删除操作链表的每个元素称为一个节点,每个节点都可以存储在内存中的不同的位置,为了表示每个元素与后继元素的逻辑关系,以便构成“一个节点链着一个节点”的链式存储结构。 let LinkNode=function(val){ this.val=val; this.next=nu

2020-09-18 21:23:19 131

原创 promise实现

一个最基础版本的实现,其中还没有实现返回promise对象等功能。 function YPromise(fn){ var that=this;//保证this指向 that.state="pending"; that.successList= []; that.failList= []; fn(resolve,reject); function resolve(res){ // 成功的方法 setTimeout(function

2020-09-15 10:02:23 138

原创 css+div 左右两边固定,中间自适应

左右元素两边固定,中间元素自适应方法一使用float <style type="text/css"> body{ margin: 0; box-sizing: border-box; height: 100vh; width: 100vw; } #left{ float: left; background-color: red; width: 200px; height: 400px;

2020-09-10 10:46:26 2394

转载 javascript实现遍历一次数组找到出现最多次数和最少次数项

javascript实现遍历一次数组找到出现最多次数和最少次数项以下是找到的解,用自己的方法最小项解不开。答案巧妙用了Math.max.apply(null,arr)使得arr变成了apply的参数。直接找到数组最大值和数组最小值。 var arr=[2,4,1,4,2,4,5,3,3,1,5,4,4,5,6]; function fin(arr){ var number=[...new Set(arr)];// 记录一共有几个不重复的数组项 v

2020-09-09 20:56:15 1382 1

原创 javascript实现快速排序

快速排序思想:快速排序算法通过多次比较和交换来实现排序,其排序流程如下:(1)首先设定一个分界值,通过该分界值将数组分成左右两部分。(2)将大于或等于分界值的数据集中到数组右边,小于分界值的数据集中到数组的左边。此时,左边部分中各元素都小于或等于分界值,而右边部分中各元素都大于或等于分界值。(3)然后,左边和右边的数据可以独立排序。对于左侧的数组数据,又可以取一个分界值,将该部分数据分成左右两部分,同样在左边放置较小值,右边放置较大值。右侧的数组数据也可以做类似处理。(4)重复上述过程,可以看出,

2020-09-03 12:47:54 514

原创 vue学习-vue的rem布局

vue的rem布局rem就是以当前html的字体大小为一个单位,利用rem可以让页面使应不同屏幕宽度的机型。rem.js使用立即执行函数,在页面调整和dom加载完毕时,根据设计稿和现屏幕宽度换算出当前字体大小。(function(){ function resize(){ var baseFontSize=100;//设计稿100px是1rem,750px-->7.5rem var designWidth=750;//设计稿宽度 var

2020-09-02 10:43:31 288

原创 vue学习-使用mockjs模拟发送数据

mockjs模拟数据官方教程中提到# 安装npm install mockjs// 使用 Mockvar Mock = require('mockjs')var data = Mock.mock({ // 属性 list 的值是一个数组,其中含有 1 到 10 个元素 'list|1-10': [{ // 属性 id 是一个自增数,起始值为 1,每次增 1 'id|+1': 1 }]})// 输出结果console.log(JSON

2020-09-02 00:18:13 244

原创 javascript实现队列

队列队列是一种先进先出的数据结。队列只能在队尾插入元素,在队首删除元素。javascript实现队列 <script type="text/javascript"> /* 1、enqueue(element)向队尾加入一个元素 2、dequeue()移除队列的第一个元素,并返回被移除的元素 3、front()获取队列中的第一个元素 4、back()获取队列中的第一个元素 5、isEmpty()判空 6、size()返回队列中元

2020-09-01 13:31:26 162

原创 vue学习-打包编译,部署到服务器

打包首先设置其读取资源时是在相对路径增加vue.config.jsmodule.exports={ publicPath:'./'}然后使用npm run build打包打包后部署到服务器1、创建serve文件夹app.jslet express=require('express')let app=express()app.use(express.static('static'))app.listen(3000,()=>{ console.log("服

2020-08-28 04:25:10 374

原创 vue学习-模块化

vuex细分模块modules1、新建模块中不使用namespaced:true时mall.jsexport default{ state:{ mallname:"tataimall" }, mutations:{ setMallname(state,payload){ state.mallname=payload; } }}在store的index.js中需要进行以下操作import f

2020-08-28 03:56:58 106

原创 vue学习-mapState,mapGetters,mapActions,mapMutations

mapState,mapGetters,mapActions,mapMutations利用以上四个方法可以简化页面中的引用方式。注意使用方法!<template> <div> <h1>姓名:{{$store.state.username}}</h1> <h1>年龄:{{$store.state.age}}</h1> <h1>新的年龄:{{$store.getters.newage}}&

2020-08-28 03:18:31 104

原创 vue学习-vuex状态管理state_getters_mutation_action应用

vuex状态管理state_getters_mutation_action应用1、state的用法//放置全局状态 state: { username:"gulf", age:23, infolist:[] },组件中使用 <div> <h1>姓名:{{$store.state.username}}</h1> <h1>年龄:{{$store.state.age}}</h1> <

2020-08-28 02:45:10 186

原创 vue学习-组件生命周期、路由守卫

组件生命周期router中加入以下路径 { path:"/life", name:"life", component: () => import(/* webpackChunkName: "about" */ '../views/Life.vue') }life.vue<template> <div> 生命周期举例子 </div></template><script> ex

2020-08-28 01:01:09 156

原创 vue学习-vue路由

vue路由选中路由

2020-08-27 18:40:19 145

原创 jQuery学习-事件

jQuery事件常见的事件绑定点击(处理程序)事件。blur(handler)失去焦点事件。mouseenter(handler)鼠标进入事件。mouseleave(handler)鼠标离开事件。dbclick(handler)双击事件。change(handler)更改事件,如:文本框值更改,下拉列表值更改等。focus(handler)获得焦点事件。keydown(handler)键盘点击事件。 参考链接:http : //www.w3school.com.cn/jquery/

2020-08-27 17:50:38 77

原创 vue学习-组件插槽

<slot>和v-slotlayout2.vue<template> <div> <div>这是头部</div> <div> <h1>这是左边</h1> <slot name="left"></slot> </div> <div> <h1>这是右边</h1>

2020-08-27 12:00:16 120

原创 vue学习-组件传递数据

props通过父组件传递数据给子组件HelloWorld.vue例子:<template> <div class="hello"> <div>welcome to {{user}}'s world!</div> <div>{{brief.title}}</div> <div>{{brief.description}}</div> </div></

2020-08-27 03:38:49 127

原创 vue学习-computed,侦听数据,v-model

计算属性computed<template> <div id="app"> <h1>{{msg}}</h1> <h1>{{msg.split('').reverse().join('')}}</h1> <h1>{{reverseMsg}}</h1> </div></template><script>//import HelloWorld fr

2020-08-27 02:45:35 354

原创 vue学习-脚手架创建vue项目

脚手架创建vue项目安装@vue/cli可以使用下列任一命令安装这个新的包:npm install -g @vue/clioryarn global add @vue/cli安装之后,你就可以在命令行中访问 vue 命令。你可以通过简单运行 vue,看看是否展示出了一份所有可用命令的帮助信息,来验证它是否安装成功。你还可以用这个命令来检查其版本是否正确:vue --version在这里我踩了坑之前安装过脚手架,然后一直报错,卸载又卸载不掉,最后是吧vue文件夹和cmd等文件删掉了,就可

2020-08-27 01:54:44 95

原创 vue学习-组件

vue组件Vue 组件的示例:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https:/

2020-08-27 01:01:20 62

原创 vue学习-初识

vueVue是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。写一个简单的vue声明式渲染<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> &

2020-08-26 20:06:45 155

原创 nodejs学习-http搭建简易服务器

//导入node的http模块let http=require('http');const { url } = require('inspector');//创建服务器实例let server=http.createServer();//服务器监听请求数据server.on('request',(req,res)=>{ console.log(req.url) if(req.url=='/'){ res.end('index') }else if

2020-08-25 02:14:16 90

原创 nodejs学习-路径模块path

路径操作:console.log(__filename)//当前正在执行的脚本的文件名称 //E:\前端学习\vue学习\node\demo6\index1.jsconsole.log(__dirname)//当前正在执行的脚本的目录名称 //E:\前端学习\vue学习\node\demo6let path=require('path')//获取扩展名let strPath='E:/前端学习/vue学习/node/demo6/index1.js'console.log(path.ex

2020-08-25 00:04:13 140

原创 nodejs学习-多进程之exec

介绍:Node在V8引擎之上构建,其模型与浏览器类似,js将会运行在单个进程的单个线程上;**好处:**程序状态是单一的,不存在多线程情况下的锁、线程同步的问题,操作系统在调度时因为较少上下文的切换,可以很好的提高cpu的使用率;缺点如今CPU基本是多核的,一个Node进程只能用一个核 -> 如何充分利用多核cpu服务器?Node执行在单线程上,一旦单线程上抛出的异常没有被捕获,将会引起整个进程的崩溃 -> **如何保证进程的健壮性核稳定性?多进程架构child_proc

2020-08-24 20:19:33 3844

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除