自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

前端开发-陈善强

前端知识分享

  • 博客(30)
  • 资源 (2)
  • 收藏
  • 关注

原创 Vuex的核心概念

1. StateState 提供唯一的公共数据源,所有共享的数据都要统一放到 Store 的 State 中进行存储。创建store数据源,提供唯一公共数据const store = new Vuex.Store({ state: { count: 0 } })1.1 组件访问 State 中数据的第一种方式:this.$store.state.全局数据名称1.2 组件访...

2019-12-25 22:42:04 217

原创 node.js中分别使用Promise和异步函数处理回调地狱的问题

Promise出现的目的是解决Node.js异步编程中回调地狱的问题。需求:依次读取1.txt、2.txt、3.txt文件const fs = require('fs');fs.readFile('./1.txt', 'utf8', (err, result1) => { console.log(result1) fs.readFile('./2.txt', 'utf8', ...

2019-12-24 13:57:28 397

原创 Node.js - 模块查找规则

1、当模块拥有路径拥有后缀 require('./find.js')直接引入模块;2、当模块拥有路径但没有后缀时 require('./find')先找同级同名的.js文件;再找同级同名.json文件;再找同级同名.node文件;再找同名的文件夹;再找同名文件夹下的package.json文件中的main选项中的入口文件;再找同名文件夹下的index.js文件;3...

2019-12-23 11:57:02 379 1

原创 高阶函数、闭包、递归

1. 高阶函数 ***高阶函数是对其他函数进行操作的函数,它接收函数作为参数或将函数作为返回值输出如下:此时fn 就是一个高阶函数函数也是一种数据类型,同样可以作为参数,传递给另外一个参数使用。最典型的就是作为回调函数。同理函数也可以作为返回值传递回来2. 闭包 ***2.1 变量的作用域复习变量根据作用域的不同分为两种:全局变量和局部变量函数内部可以使用全局...

2019-12-16 17:24:40 197

原创 改变函数内部 this 指向的方法(javascript高级)

改变函数内this指向 js提供了三种方法 call() apply() bind()1. call方法call()方法调用一个对象简单理解为调用函数的方式,但是它可以改变函数的 this 指向应用场景: 经常做继承call:打电话,在程序中有调用的意思代码:var o = { name: 'andy'} function fn(a, b) { c...

2019-12-16 16:07:25 608

原创 ES5新增方法

1. 数组方法forEach遍历数组语法: arr.forEach(function(value, index, array) { //参数一是:数组元素 //参数二是:数组元素的索引 //参数三是:当前的数组 }) //相当于数组遍历的 for循环 没有返回值function forEach(fn){ //..... //...

2019-12-16 13:45:07 134

原创 ES6之前的继承

ES6之前并没有给我们提供 extends 继承我们可以通过构造函数+原型对象模拟实现继承,被称为组合继承1. call()call()可以调用函数call()可以修改this的指向使用call()的时候,参数一是修改后的this指向,参数2,参数3…使用逗号隔开连接语法:fun.call(thisArg, arg1, arg2, ...)//thisArg :当前调用函数...

2019-12-15 17:56:30 291

原创 关于通过构造函数创建对象的相关知识点

通过构造函数创建对象的方式 function Person(name,age){ this.name = name; this.age = age; } var obj = new Person('test,18);1. 静态成员和实例成员JavaScript 的构造函数中可以添加一些成员可以在构造函数本身上添加,也可以在构造函数内部的 this 上添加通过这...

2019-12-15 17:49:40 1366

原创 JS对象的三种创建方式

字面量方式var obj = {};new关键字var obj = new Object();构造函数方式function Person(name,age){ this.name = name; this.age = age;}var obj = new Person('zs',12);

2019-12-15 17:11:13 139

原创 JS递归函数

含义:编程语言中,函数Func(Type a,……)直接或间接调用函数本身,则该函数称为递归函数。function diGui(){ if(){ return .... } digui()}digui()实例:1、在函数的内部执行函数本身称为递归,递归的本质是一个循环。function f() { console.log(1) ...

2019-12-11 16:18:06 659

原创 Jquery链式编程

// 链式编程是为了节省代码量,看起来更优雅。$(this).css('color', 'red').sibling().css('color', ''); $(this).css();// 返回的是调用者$(this).slibilng();// 返回我的兄弟姐们//jq的操作方法: css(),hide(),show(),事件等等,会将调用者返回//jq的筛选方法,会将筛选完的对象返...

2019-12-09 17:53:09 350

原创 jQuery停止动画排队

动画或者效果一旦触发就会执行,如果多次触发,就造成多个动画或者效果排队执行。停止动画排队的方法为:stop() ;stop() 方法用于停止动画或效果。stop() 写到动画或者效果的前面, 相当于停止结束上一次的动画。总结: 每次使用动画之前,先调用 stop() ,在调用动画。$(function() { // 鼠标经过 // $(...

2019-12-09 17:11:14 296

原创 jQuery中的顶级对象$

$是 jQuery 的别称,在代码中可以使用 jQuery 代替,但一般为了方便,通常都直接使用 $ 。$ 是jQuery的顶级对象,相当于原生JavaScript中的 window。把元素利用$包装成jQuery对象,就可以调用jQuery 的方法。...

2019-12-09 17:06:09 187

原创 jQuery的入口函数

jQuery中常见的两种入口函数:// 第一种: 简单易用。 ***$(function () { ... // 此处是页面 DOM 加载完成的入口}) ; // 第二种: 繁琐,但是也可以实现 (ready:准备,dom准备好了)$(document).ready(function(){ ... // 此处是页面DOM加载完成的入口});总结:等...

2019-12-09 17:04:14 279

原创 jQuery 对象和 DOM 对象

使用 jQuery 方法和原生JS获取的元素是不一样的,总结如下 :用原生 JS 获取来的对象就是 DOM 对象jQuery 方法获取的元素就是 jQuery 对象。jQuery 对象本质是: 利用$对DOM 对象包装后产生的对象(jquery对象就是一个伪数组,存储的是一个一个的DOM对象 )***。注意:只有 jQuery 对象才能使用 jQuery 方法,DOM 对象则使用原...

2019-12-09 16:08:12 189

原创 JS执行机制、同步和异步、宏观任务和微观任务

1. JS 是单线程JavaScript 语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。这是因为 Javascript 这门脚本语言诞生的使命所致——JavaScript 是为处理页面中用户的交互,以及操作 DOM 而诞生的。比如我们对某个 DOM 元素进行添加和删除操作,不能同时进行。 应该先进行添加,之后再删除。 单线程就意味着,所有任务需要排队,前一个任务结束,才会...

2019-12-09 14:19:24 1119

原创 jQuery 对象和 DOM 对象转换

DOM 对象与 jQuery 对象之间是可以相互转换的。因为原生js 比 jQuery 更大,原生的一些属性和方法 jQuery没有给我们封装.要想使用这些属性和方法需要把jQuery对象转换为DOM对象才能使用。代码:// 1.DOM对象转换成jQuery对象,方法只有一种var box = document.getElementById('box'); // 获取DOM对象v...

2019-12-09 11:53:57 166

原创 jQuery隐式迭代

jQuery方法获取的元素就是jQuery对象;jQuery对象本质是:利用$对DOM对象包装后产生的对象(jquery对象就是伪数组,存储的是一个一个的DOM对象)含义:遍历jQuery对象内部 DOM元素(伪数组形式存储)的过程就叫隐式迭代简单理解:给匹配的所有元素进行循环遍历,执行相应的方法,而不是我们再进行循环,简化我们的操作,方便我们的调用。实例:<bo...

2019-12-09 11:44:29 2252

原创 在开发Vue项目时,页面加载时出现闪烁问题

使用v-cloak指令防止页面加载时出现闪烁问题<style type="text/css"> /* 1、通过属性选择器 选择到 带有属性 v-cloak的标签 让他隐藏 */ [v-cloak]{ /* 元素隐藏 */ display: none; }</style><body> <div id=...

2019-12-08 23:00:07 700

原创 对于MVVM概念的解读

根据vue解读mvvm概念MVC 是后端的分层开发概念; MVVM是前端视图层的概念,主要关注于 视图层分离,也就是说:MVVM把前端的视图层,分为了 三部分 Model, View , VM ViewModelm-model数据层 Vue 中 数据层 都放在 data 里面v-view 视图Vue 中 view 即 我们的HTML页面vm...

2019-12-08 22:50:41 227

原创 Vue作用域插槽

应用场景:父组件对子组件的内容进行加工处理1. 插槽定义 <ul> <li v-for = "item in list" v-bind:key = "item.id"> <slot v-bind:item = "item"> {{item.name}} </slot> </li> </ul...

2019-12-08 15:47:09 131

原创 Vue具名插槽

具有名字的插槽使用 中的 “name” 属性绑定元素 <div id="app"> <base-layout> <!-- 2、 通过slot属性来指定, 这个slot的值必须和下面slot组件得name值对应上 如果没有匹配到 则放到匿名的插槽中 --> <p slot='header'>标...

2019-12-08 15:24:16 176

原创 Vue组件插槽的基本用法(匿名插槽)

组件的最大特性就是复用性,而用好插槽能大大提高组件的可复用能力 1、插槽位置/* 组件插槽:父组件向子组件传递内容*/Vue.component('alert-box',{ template:` <div class="demo-alert-box"></div> <strong>Error!...

2019-12-08 15:15:06 438

原创 web - api

1 - Web APIs学习目标:能够通过ID来获取元素能够通过标签名来获取元素能够通过class来获取元素能够通过选择器来获取元素能够获取body和html元素能够给元素注册事件能够修改元素的内容能够区分innerText和innerHTML的区别能够修改像div这类普通元素的属性能够修改表单元素的属性能够修改元素的样式属性1. Web API介绍1.1 API的...

2019-12-07 17:35:34 1341

原创 在Vue项目中处理ESlint语法报错问题的方法

在编译项目过程中,出现如下类似问题:从报错的结果看,书写的代码没有符合ESlint的代码规范。如何解决这类问题呢?1、创建.prettierrc配置文件在项目根目录中,创建.prettierrc文件,".prettierrc"文件是json格式的配置文件,该文件写入代码如下:{ "semi":false,//格式化去掉代码中的分号 "singleQu...

2019-12-04 22:36:49 1394

原创 基于3.x版本的脚手架创建vue项目

通过vue脚手架创建vue项目之前,必须首先安装vue脚手架安装3.x版本的Vue脚手架:npm install -g @vue/cli基于3.x版本的脚手架创建vue项目,有三种方式:基于 交互式命令行 的方式,创建 新版 vue 项目vue create my-project基于 图形化界面 的方式,创建 新版 vue 项目vue ui基于 2.x 的旧模板,创建...

2019-12-03 17:12:38 617

原创 阻止默认行为

html中一些标签有默认行为,例如a标签被单击后,默认会进行页面跳转。阻止默认行为的方法普通浏览器 e.preventDefault()低版本浏览器(ie6-7) e.returnValue = false;阻止默认行为的兼容性利用return false 阻止默认行为,并且没有兼容性问题实例应用: <a href="http://www.baid...

2019-12-01 11:06:32 189

原创 阻止事件冒泡

事件冒泡:开始时由最具体的元素接收,然后逐级向上传播到到 DOM 最顶层节点。注释:事件冒泡本身的特性,会带来的坏处,也会带来的好处,需要我们灵活掌握。阻止事件冒泡的方式标准写法:利用事件对象里面的 stopPropagation()方法 ( stop 停止 Propagation 传播) e.stopPropagation() 非标准写法:IE 6-8 利用事件对...

2019-12-01 10:55:52 147

原创 JS常用鼠标事件

1. 禁止选中文字和禁止右键菜单1.1 禁止鼠标右键菜单contextmenu事件:鼠标右键菜单事件。主要控制应该何时显示上下文菜单(右键菜单),主要用于程序员取消默认的上下文菜单document.addEventListener('contextmenu', function(e) { e.preventDefault();})1.2 禁止鼠标选中(selectstart 事件:...

2019-12-01 10:47:15 1318

原创 JS事件委托(什么情况下使用事件委托)

1. 什么是事件委托事件委托:把事情委托给别人,代为处理。事件委托也称为事件代理,在 jQuery 里面称为事件委派。理解:说白了就是,不给子元素注册事件,给父元素注册事件,把处理代码在父元素的事件中执行。js事件中的委托: <ul> <li>知否知否,应该有弹框在手</li> <li>...

2019-12-01 10:17:03 2688

微信小程序开发资料,快速掌握小程序开发

本资料适合有前端基础,想提升自己的技术,掌握微信小程序开发的同学,本资料从0开始讲述小程序开发流程,及基础技术

2022-11-01

2022-11-01

移动web开发,rem适配方案

涵盖了移动web开发技术,多种移动web开发方案,例如flexible.js+rem适配、less+rem+媒体查询适配方案

2022-10-31

谷歌浏览器axure插件.rar

内容概要:谷歌浏览器可运行原型设计页面所需插件; 适用人群:设计人员、开发人员 使用场景:需要在谷歌浏览器运行,原型页面; 目标:在浏览器中,正常运行原型页面;

2022-06-21

Javascript入门篇

Javascript入门篇

2016-07-20

空空如也

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

TA关注的人

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