自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TypeScript枚举

使用enum + namespace的声明方式向枚举类型添加静态方法。我们将静态成员isBusinessDay添加到枚举上。TypeScript的枚举是基于数字的,这意味着可以将数字类型赋值给枚举类型的实例。通过设置--preserveConstEnums,运行时可以使用保留编译后的变量。在这里,我们可以进行如下操作。在编译阶段被移除(提高性能)

2023-11-22 19:24:51 143

原创 原型链题目

function Foo() { getName = function () { console.log(1); }; return this; }; Foo.getName = function () { console.log(2); }; Foo.prototype.getName = function () { console.log(3); }; var getName = function () { ...

2021-01-20 17:38:18 251

原创 react中的this

1 在constructor中绑定class Toggle extends React.Component { constructor(props) { super(props); this.state = {isToggleOn: true}; // 这边绑定是必要的,这样 `this` 才能在回调函数中使用 this.handleClick = this.handleClick.bind(this); } handleClick() {

2020-08-06 22:58:07 299

原创 React中的state管理

实现如上的点击变色。父组件class StarRating extends React.Component{ constructor(props) { super(props) this.state = { starsSelected: props.starsSelected } this.change = this.change.bind(this) } change(starsSelected) { this.setS...

2020-07-31 21:46:55 294

原创 函数对象参数默认值及其解构应用示例

(({x,y})=>{ console.log(x, y); // // undefined undefined})({});(({x=1,y=2})=>{ console.log(x,y); // 1 2})({});(({x=3, y=4}={})=>{ console.log(x,y); // 3 4})();function test4({x,y}={x:100,y:200}) { console.log(x,y);}test4({}); //.

2020-07-20 19:20:53 415

原创 js中this大全

demo1var a = 0;var obj = { a: 1, b1: this.a, b2: () => this.a,};console.log(obj.b1); // 0console.log(obj.b2()); // 0demo2var a = 0;(function fn(){ var a = 2; console.log(this.a); // 0 const subf = ()=>this.a; console.

2020-07-20 16:39:26 158

原创 箭头函数

var humans = { name: 'nealcaffreal', add: function() { console.log(this) //humans对象 setTimeout(function() { console.log(this)// window对象 },100) } } humans.add() ...

2020-07-20 14:21:23 162

原创 flex弹性盒模型及flex-grow与flex-shrink的计算

一、Flex 布局是什么?Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。任何一个容器都可以指定为 Flex 布局。.box{ display: flex;}行内元素也可以使用 Flex 布局。.box{ display: inline-flex;}Webkit 内核的浏览器,必须加上-webkit前缀。.box{ display: -webkit-flex; /* Safari */

2020-07-07 21:17:00 365

原创 js表单元素

1.input和texte<input type="text"/><textarea name="" id="" cols="30" rows="10"></textarea>获取输入框的值 oninput事件用户输入时触发 onchange输入框失去焦点时触发 window.onload = function() { var oInput = document.querySelector('input'); oI.

2020-06-08 10:17:58 368

原创 原生js的input事件

1.onfocus 当input 获取到焦点时触发2.onblur 当input失去焦点时触发,注意:这个事件触发的前提是已经获取了焦点再失去焦点的时候才会触发该事件,用于判断标签为空。3.onchange 当input失去焦点并且它的value值发生变化时触发,个人感觉可以用于注册时的确认密码。4.onkeydown 按下按键时的事件触发,5.onkeyup 当按键抬起的时候触发的事件,在该事件触发之前一定触发了onkeydown事件--相当于一个按键,两个事件,没怎么用过6.on..

2020-06-08 09:43:45 10439

原创 搜索记录的问题

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head><body> <div id="app.

2020-05-11 21:01:58 170

原创 闭包

function counter() { var n = 1; return { count: function() { return n++ }, reset: function() { n = 0 ;return n} }}var c = counter(), d = counter();console.log(c.count()) //1console.log(d.c...

2020-05-03 22:17:19 104

原创 判断数据类型

export function typeOf(v) { return Object.prototype.toString.call(v).slice(8, -1).toLowerCase();}export function isString(v) { return typeof v === 'string';}export function isNumber(v) { ...

2020-05-01 22:42:55 152

原创 element-ui autocomplete 模糊搜索

<!DOCTYPE html><html> <head> <meta charset="UTF-8" /> <!-- import CSS --> <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/the...

2020-04-22 21:02:49 363

原创 伪类元素的使用

<dl class="hot-search"> <dt class="hot-search-menu"> <span>热门搜索</span> </dt> <dd class="hot">opencv</dd> <dd class="hot">eclipse&lt...

2020-04-13 20:08:28 239

原创 微信小程序-wx.createAnimation动画实现

一、效果说明:类似携程切换往返地址二、实现1).wxml:<view class="animation"> <view class="dis-flex"> <view class='flex3' animation="{{lAnimate}}">{{start}}</view> <view cla...

2020-01-04 17:25:34 862

原创 js身份证号校验

if (card === '') { console.log('请输入身份证号,身份证号不能为空'); return false; } if (isCardNo(card) === false) { console.log('您输入的身份证号码不正确'); return false; } //检查省份 if (checkProvince...

2020-01-04 13:54:00 3134 2

原创 前端crypto-js加密

AES加密今天做了Vue项目的加密,主要做了登录接口,保证登录的安全性能。网上关于AES对称加密的算法介绍挺多的,对这一块还不是特别理解的小伙伴可自行百度,这里我推荐一篇AES加密算法的详细介绍与实现,讲的还是蛮详细的~要用AES算法加密,首先我们要引入crypto-js,crypto-js是一个纯javascript写的加密算法类库 ,可以非常方便地在j...

2020-01-04 13:50:22 548

转载 vue项目中keep-alive的使用,从详情页返回列表时保存浏览位置

背景描述:最近在做移动端前端项目中,需要实现以下场景:1.在页面查询列表,进入详情页时,返回需要页面返回到上次浏览的位置2.由于查询列表获取的数据可能会短时间改变,如果前端长时间缓存数据,并不符合业务要求。3.我在进入详情页时可以修改列表的数据,返回时滚动到,用户看到的应该是最新的数据4.每个列表页面需要用到滑动加载更多数据。项目中vue的使用:1.用到keep-ali...

2019-12-23 21:43:05 1245

原创 vue iview 前端表格分页

// 获取Table数据 handleListTable() { // 保存取到的所有数据 // 初始化显示,小于每页显示条数,全显,大于每页显示条数,取前每页条数显示 if (this.tableDataAll.length < this.pageSize) {...

2019-12-18 23:40:21 709 1

原创 vue 导航守卫结合keep-alive实现缓存

1 app.vue<template> <div id="main" class="app-main"> <keep-alive> <router-view v-if="$route.meta.keepAlive"></router-view> </keep-al...

2019-12-18 22:28:21 413

原创 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-...

2019-12-14 22:14:57 210

转载 js 事件委托(事件代理)

JS中的事件委托(事件代理)一步一步来说说事件委托(或者有的资料叫事件代理)js中事件冒泡我们知道,子元素身上的事件会冒泡到父元素身上。 事件代理就是,本来加在子元素身上的事件,加在了其父级身上。 那就产生了问题:父级那么多子元素,怎么区分事件本应该是哪个子元素的? 答案是:event对象里记录的有“事件源”,它就是发生事件的子元素。 它存在兼容性问题,在老的IE下,事件源是 wi...

2019-12-14 21:01:11 183

转载 js 事件流(2)

一、概述事件流:事件流描述的是从页面中接收事件的顺序。DOM事件流传播的三个过程:事件捕获阶段 ——》 处于目标阶段 ——》 事件冒泡阶段。事件冒泡:事件开始时由最具体的元素接收,然后逐级向上传播到较为不具体的元素事件捕获:不太具体的节点更早接收事件,而最具体的元素最后接收事件,和事件冒泡相反事件流示意支持W3C标准的浏览器在添加事件时用addEventL...

2019-12-14 11:44:53 125

翻译 js 事件流

Javascript与HTML之间的交互是通过事件实现。一、事件流事件,是文档或浏览器窗口中发生的一些特定的交互瞬间。事件流,描述的是页面中接受事件的顺序。IE9,chrome,Firefox,Opera,Safari均实现了DOM2级规范中定义的标准DOM事件,而IE8和IE8以下版本仍然保留专有的事件处理方式。事件冒泡事件冒泡是由IE开发团队提出来的,即事件开始时由最具体的元素...

2019-12-14 11:36:53 85

原创 摘要js的三中加载方式

js阻塞原理浏览器内核可以分成两部分:渲染引擎(Layout Engine 或者 Rendering Engine)和 JS 引擎。早期渲染引擎和 JS 引擎并没有十分明确的区分,但随着 JS 引擎越来越独立,内核也成了渲染引擎的代称(下文我们将沿用这种叫法)。渲染引擎又包括了 HTML 解释器、CSS 解释器、布局、网络、存储、图形、音视频、图片解码器等等零部件。JS 引擎是独立于渲染引...

2019-12-13 21:56:22 99

原创 Vue Router 的params和query传参的使用和区别

首先简单来说明一下$router和$route的区别//$router : 是路由操作对象,只写对象//$route : 路由信息对象,只读对象//操作 路由跳转this.$router.push({ name:'hello', params:{ name:'word', age:'11' }})//读...

2019-12-09 22:02:41 178

原创 vue 强制组件重新渲染(重置)

数据通过异步操作后,对之前刚加载的数据进行变更后,发现数据不能生效方案一当数据变更后,通过watch监听,先去销毁当前的组件,然后再重现渲染。使用v-if可以解决这个问题<template> <third-comp v-if="reFresh"/></template> <script> export defau...

2019-12-09 22:01:52 1212

原创 js(jquery)中常用追加元素的几种方法:append,appendTo,after,before,insertAfter,insertBefore,appendChild

<script type="text/javascript">// <![CDATA[$(function(){ //append(),在父级最后追加一个子元素 $(".append").click(function(){ $("#wrap").append("<p class='three'>我...

2019-12-09 22:01:04 1069

原创 qs模块

qs.stringify() 和JSON.stringify()var a = {name:'hehe',age:10};qs.stringify序列化结果如下name=hehe&age=10而JSON.stringify序列化结果如下:"{"a":"hehe","age":10}"qs.parse()和JSON.parseqs.parse()将URL解析成对象...

2019-12-09 21:43:47 279

原创 vue的scoped修改三方组件的局部样式

vue引用了第三方组件,需要在组件中局部修改第三方组件的样式,而又不想去除scoped属性造成组件之间的样式污染。此时只能通过 >>>,穿透scoped。有些Sass 之类的预处理器无法正确解析>>>。可以使用/deep/操作符(>>>的别名)<style scoped>外层 >>>...

2019-12-06 17:08:46 252

原创 js获取前一天时间段的日期格式

date.jsexport function formatDate(date, fmt) { var date = new Date(date); //传入的fmt格式为 'yyyy-MM-dd hh:mm' if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, (date.getFullYear()...

2019-12-06 12:33:08 456

原创 web蠕虫

一 web蠕虫的类别 web蠕虫只要包括:XSS蠕虫 CSRF蠕虫 Clickjacking蠕虫,文本蠕虫。1 XSS蠕虫(1 )蠕虫的性质 传播性:web层面基于HTTP请求进行传播。 传播性:基于JS脚本。(2)条件内容由用户驱动。存在XSS漏洞。被感染的用户处于登录状态 这样XSS的权限就是登录后的权限,能执行更多的恶意操作。内容具备传播...

2019-12-06 10:43:32 348

原创 setTimeout实现轮循

1<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equi...

2019-12-01 22:11:52 806

原创 vue 列表单选处理

<template> <div class="depart"> <!-- search--> <div class="top-search"> <el-form ref="formSearch" label-width="100px" inline> ...

2019-11-27 21:12:24 613

原创 js的jsonp的封装

import originJsonp from 'jsonp'export default function jsonp(url, data, option) { url += (url.indexOf('?') < 0 ? '?' : '&') + param(data) return new Promise((resolve, reject) => { ...

2019-11-23 20:01:39 122

原创 js原生选项卡

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>选项卡</title> <style type="text/css"> *{margin: 0; padding: 0; font-family: "微软雅黑";font-s...

2019-11-16 19:22:24 87

原创 js解析器

// console.log(m); // function m() { console.log(2) }// var m = 10;// console.log(m); // 10// function m() {// console.log(1)// }// console.log(m); // var m = 20;// console.log(m); //20/...

2019-11-09 23:20:29 539

原创 vue+img默认加载

场景:有些时候后台返回图片地址不一定能打开,所以这个时候应该加一张默认图片<script>export default{ data(){ return{ imgUrl:'' } }, methods:{ handleError(e){ e.target.src=reqiure('图片路径') //当然如果项目配置了tr...

2019-10-17 15:28:48 278

原创 vue+object.freeze

场景:一个长列表数据,一般不会更改,但是vue会做getter和setter的转换 用法:是ES5新增的特性,可以冻结一个对象,防止对象被修改 支持:vue 1.0.18+对其提供了支持,对于data或vuex里使用freeze冻结了的对象,vue不会做getter和setter的转换 注意:冻结只是冻结里面的单个属性,引用地址还是可以更改。new Vue({ data: { ...

2019-10-17 15:02:46 164

空空如也

空空如也

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

TA关注的人

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