自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 跨域解决方案

同源策略指 “协议 + 域名 + 端口” 三者相同,其中一者不同即是跨域跨域限制以下几种行为:1.cookie localstorage 和 indexDB 无法读取2.dom和js对象无法获取3.不能发送ajax请求解决方案:1.jsonp实现跨域原生: <script> var script = document.createElement('script'); script.type = 'text/javascript'; script.s

2020-08-09 21:52:57 183

原创 vue新建项目

1.需要node环境2.安装vue-cil可以使用淘宝镜像: npm install -g cnpm --registry=https://registry.npm.taobao.org cnpm install vue-cli -g检测是否安装成功(查看vue版本号)新建文件夹 cd路径在新建文件夹中创建一个项目文件夹vue init webpack “项目名称”cd路径至项目文件夹安装依赖项 cnpm install最终结果:运行 cnpm run d

2020-08-09 20:51:26 276

原创 vue.js基础(指令)

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。开发环境版本 <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>mus

2020-08-02 21:32:37 245

原创 Vue实现ToDoList

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title></title> <style> *{ margin: 0; padding: 0; } body{ margin: 0; padding: 0; font-size: 16px; background: #C

2020-07-29 20:27:47 179

原创 js对数组宝具

数组去重 var unique = [...new Set(arr)]置空数组 var arr = [1,2,3]; arr.lenght = 0; console.log(arr); //[]模拟map() var arr = [ {a: 1}, {a: 2}, { a: 3}]; var result = Array.from(arr, (item) => { return item.a}); console.log(result) // [1, 2, 3]数组转化对象

2020-07-26 22:35:04 133

原创 Redis

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexe

2020-07-25 23:50:56 123

原创 js柯里化(Currying)

柯里化即把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术简单实现 // 普通的add函数 function add(x, y) { return x + y } // Currying后 function curryingAdd(x) { return function (y) { return x + y } } add(1, 2) // 3

2020-07-19 22:06:00 204

原创 MongoDB

安装MongoDB查看目录中是否有bin文件夹配置环境变量:在PATH变量值后加上分号和bin文件夹路径创建一个文件夹作为数据库数据库开机:mongod --dbpath 文件夹路径

2020-07-18 15:12:55 188

原创 防抖与节流

防抖与节流,解决了在一段时间内,频繁触发同一个事件带来的性能问题区别:防抖即频繁触发事件后,一段时间内没有触发才执行节流即频繁触发事件,但规定一段时间内只执行一次防抖: function debounce(callback, time) { //定义计时器 var timer; //闭包避免全局污染 return function () { //清除定时器 clearTimeout(timer); //重新开始计时

2020-07-12 21:57:56 136

原创 Node.js实现登录注册

目录结构注册页面:reg.html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title></title> <link rel="stylesheet" h

2020-07-09 19:02:04 3114

原创 Reflect反射

Reflect对象是ES6为操作对象而提供的新 API设计目的:1.将Object对象的一些内部方法放到Reflect对象上2.修改一些Object方法的返回结果,使其更合理3.让Object的操作都变为函数行为4.Reflect对象的方法与Proxy对象的方法一一对应,不管Proxy怎么修改默认行为,你总可以在Reflect上获取默认行为静态方法:1.Reflect.get(target, name, receiver) var obj = { a: 1, } console.lo

2020-07-05 20:46:49 196

原创 Proxy代理

Proxy 对象用于定义基本操作的自定义行为(如属性查找、赋值、枚举、函数调用等)。语法: const p = new Proxy(target, handler)target:要使用 Proxy 包装的目标对象(可以是任何类型的对象,包括原生数组,函数,甚至另一个代理)。handler:一个通常以函数作为属性的对象,各属性中的函数分别定义了在执行各种操作时代理 p 的行为。实例 var obj = { name: 'xxx' } var p_obj = new Proxy(obj,{

2020-07-04 15:07:51 267

原创 babel

Babel 是什么?Babel 是一个工具链,主要用于将 ECMAScript 2015+ 版本的代码转换为向后兼容的 JavaScript 语法,以便能够运行在当前和旧版本的浏览器或其他环境中直接开整首先需要node环境,这是前提1.在本地目录下npm init,它会自动生成一个package.json文件其他文件不用管,这是我已经安装好之后的样子2.安装babel命令行工具(不建议在全局安装) npm install --save-dev babel-cli3.在命令行中调用bab

2020-06-27 00:20:00 223

原创 js执行机制

js为什么是单线程?从用途出发,假定js有两个线程,一个添加节点,一个删除这个节点,那么js该怎么运行?这很矛盾,但确实是不得不考虑的问题而单线程不存在这样的问题,因为它同一时间只能做一件事,然而效率太低了所以js作为单线程的语言,也要去考虑如何去实现多线程js多线程的实现取决于它的运行环境,比如浏览器,浏览器是多线程的,即浏览器开辟了几个线程去辅助js线程的执行浏览器的五个线程:js主线程:负责执行栈中栈顶代码的执行GUI 渲染线程:负责render树的渲染(节点与css样式)事件监听线

2020-06-25 15:06:21 176

原创 TypeScript入门

TypeScript是JavaScript类型的超集,它可以编译成纯JavaScriptTypeScript可以在任何浏览器、任何计算机和任何操作系统上运行,并且是开源的通过npm环境下载TypeScript npm install -g typescript创建greeter.ts,编译代码在命令行上,运行TypeScript编译器 tsc greeter.ts输出结果为一个greeter.js文件,它包含了和输入文件中相同的JavsScript代码为什么要用TypeScript

2020-06-22 19:29:58 201

原创 JSON

JSON是一个轻量级的数据格式,可以简化表示复杂数据结构的工作量。JSON使用JavaScript语法的子集表示对象、数组、字符串、数值、布尔值和null。语法:简单值使用与JavaScript相同的语法,可以在JSON中表示字符串、数值、布尔值和null,但不支持JavaScript中的undefined 10 "Hello World!"ps:JSON字符串必须使用双引号,单引号会报错对象JavaScript对象 var person = { name: "xxx", ag

2020-06-21 20:43:05 292

原创 AJAX

全称Asynchronous JavaScript and XML,即异步的 JavaScript 和 XML它可以不重新加载整个页面,通过和服务器交换数据来更新部分网页如何使用1.创建 XMLHttpRequest 对象 var xhr = new XMLHttpRequest();2.规定请求的类型、url、及是否异步处理语法:open(method,url,async)method:请求类型GET/POSTurl:文件在服务器上的地址async:true(异步)false(同步)

2020-06-20 23:28:51 151

原创 js异常处理 try catch finally

try catch finally 语句用于处理代码中可能出现的错误信息try语句允许我们定义在执行时进行错误测试的代码块catch语句允许我们定义当 try 代码块发生错误时所执行的代码块finally语句在try和catch之后无论有无异常都会执行举个例子: <p></p> <script type="text/javascript"> try { abc('hello world'); } catch(err) { document.

2020-06-13 23:48:17 521

原创 js对象属性的四个特征

创建一个对象 var obj = { "id":"10001", "name":"吴中生", "salary": "8000" }Object.getOwnPropertyDescriptor()获取某个对象特定属性的属性描述ps:获取不存在的属性时会返回undefined var objId = Object.getOwnPropertyDescriptor(obj,'id'); console.log(objId); //{value: "10001", writable:

2020-06-13 00:18:26 355

原创 js对象

对象(object)是一种非常重要的数据类型,可以理解为包含很多数据的集合,对象的数据可以通过两种形式访问——属性(property)和方法(method)属性和方法都通过.来访问 object.property object.method()对象有多重要?重要到js的核心功能几乎都是由对象实现的这就是为什么在学习js时,会一直强调要有面向对象编程的思想的原因了这里有一个Person对象,上面有属性 Person.name Person.age同时也关联着一些方法 Person.wa

2020-06-07 21:07:40 159

原创 php与js的区别

php与js的区别php是工作在服务器端的脚本语言,js是工作在浏览器端的脚本语言核心功能上php通过函数实现,js通过对象实现嵌入页面方式php <?php ?>js <script></script>输出语句php echo() //可输出多个字符串 print() //只能输出一个字符串 print_r() //可以打印数组 var_dump() //可输出变量的内容、类型和长度js alert() prompt() doc

2020-06-06 21:19:42 864

原创 Fullpage.js全屏滚动插件

fullPage.js 是一个基于 jQuery 的插件,它能够很方便、很轻松的制作出全屏网站,主要功能有:支持鼠标滚动支持前进后退和键盘控制多个回调函数支持手机、平板触摸事件支持 CSS3 动画支持窗口缩放窗口缩放时自动调整可设置滚动宽度、背景颜色、滚动速度、循环选项、回调、文本对齐方式等等下载Fullpage.js相关文件Fullpage.js引入文件css <link rel="stylesheet" type="text/css" href="/fullpage/jq

2020-05-31 20:12:40 238

原创 jQuery中each和map的区别

$.each()each() 方法规定为每个匹配元素规定运行的函数语法$(selector).each(function(index,element))遍历数组 var arr = ['a','b','c']; $.each(arr,function (index,value) { console.log(index + ',' + value); })结果遍历对象 var obj = { name: '小绵羊', sex: '女', age: '18' } $.

2020-05-30 00:28:03 273

原创 jQuery中 $.extend() 和 $.fn.extend() 的区别

官方解释:jQuery.extend()Merge the contents of two or more objects together into the first object把两个或者更多的对象合并到第一个当中jQuery.fn.extend()Merge the contents of an object onto the jQuery prototype to provide new jQuery instance methods把对象挂载到jQuery的prototype属性,来

2020-05-24 16:48:33 188

原创 jQuery animate()

animate()通过CSS样式将元素从一个状态改变为另一个状态。CSS属性值是逐渐改变的,这样就可以创建动画效果。语法:$(selector).animate(styles,speed,easing,callback)四个参数:1.一组包含作为动画属性和终值的样式属性和及其值的集合2.动画时间 三种预定速度之一的字符串(“slow”,“normal”, or “fast”)或毫秒数3.动画形式 jQuery提供两种,默认是缓冲swing,匀速是linear4.回调函数,在动画完成时执行的函数

2020-05-21 15:23:06 528

原创 jQuery选择器

基本选择器 $('#p') // id选择器 $('.p') // class选择器 $('p') // 元素选择器 * // 匹配所有元素 $('p,span') // 任意多个有效选择器 层级选择器 $('#div span') // 后代选择器 $('#div>span') // 子代选择器 $('#div+span') // 匹配所有紧贴div后的span元素 $('#div~span') // 匹配所有与div同级的span元素属性选择器 $('input[na

2020-05-17 23:19:06 154

原创 jQuery工厂函数$()

jQuery中最常用的工厂函数就是$(),它本质上就是一个DOM对象,但是它所使用的方法都封装在了jQuery上,所以我们不能通过$()使用JavaScript的方法,同样DOM对象也不能使用jQuery上的方法以jQuery的1.11.3版本举例,$作为一个方法出现的地方是在源码的最后: window.jQuery = window.$ = jQuery;其中的jQuery是前面定义的一个函数,在源码第70行中出现 jQuery = function( selector, context ) {

2020-05-12 21:22:20 1834

原创 在vscode中使用less

在vscode扩展中找到Easy LESS在服务端使用需要安装配置node.jsNode.js安装配置在vscode中ctrl + shift + p 找到settings.json 进行自定义配置 "less.compile": { "compress": false, // true => remove surplus whitespace 是否删除多余空白字符 "sourceMap": false, // true => generate s

2020-05-10 23:19:14 780

原创 使用jQuery

选择器元素选择器 $("p") //选取所有<p>元素 $("p.intro") //选取所有class="intro" 的 <p> 元素 $("p#demo") //选取所有 id="demo" 的 <p> 元素属性选择器 $("[href]") //选取所有带有 href 属性的元素 $("[href='#']") //选取所有带有 href 值等于 "#" 的元素 $("[href!='#']") //选取所有带有 href 值不等于 "#" 的

2020-05-10 21:15:47 382

原创 em与rem的使用和详解

em与rem都是相对长度单位,前者相对于当前对象内文本的字体尺寸,后者相对于根元素的字体尺寸emcss .box{width: 10em; height: 10em;}html <div class="box"></div>任意浏览器的默认字体都是16px,所以10em被浏览器计算为了160px为了简化换算,我们可以在css选择器中声明font-siz...

2020-05-05 16:57:42 547

原创 Bootstrap插件 carousel.js

carousel.js是bootstrap的幻灯片组件,用于循环显示元素,例如轮播(不支持嵌套)html <!-- .slide控制轮播及过渡动画 --> <!-- data-ride="carousel" 将轮播标记为从页面加载开始动画 --> <div id="carousel-example-generic" class="carous...

2020-05-04 16:39:43 435

原创 Bootstrap 栅格系统

栅格系统Bootstrap 提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列。它包含了易于使用的预定义类,还有强大的mixin 用于生成更具语义的布局。row(行)必须包含在.container(固定宽度)或 .container-fluid (100% 宽度)中column(列)必须放在.row内css div{ ...

2020-05-03 18:01:25 384

原创 Bootstrap

what ?Bootstrap是美国Twitter公司的设计师Mark Otto和Jacob Thornton合作基于HTML、CSS、JavaScript 开发的简洁、直观、强悍的前端开发框架,使得 Web 开发更加快捷。Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。why ?移动设备优先所有的主流浏览器都支持容易上手,有详细的说明文档,可快速...

2020-05-02 14:22:49 1192

原创 js动态修改CSS3中@keyframes规则

这里有一个时钟的小demo,给到的素材如下图:秒针的初始方向是朝向6点的,我们设置秒针旋转一周的@keyframes规则 @keyframes rotate { from{ transform: rotate(0deg); } to{ transform: rotate(360deg); ...

2020-04-25 20:49:04 2895

原创 CSS3动画 立方体展开效果

效果:html: <div class="box"> <div class="top">top</div> <div class="bottom">bottom</div> <div class="left">left</div> <div class="right">right&l...

2020-04-25 14:54:16 932

原创 Flex容器和项目上的常用属性

容器的属性flex-direction决定主轴方向,主轴方向影响了项目的排列方向flex-wrap换行flex-flow结合了 flex-direction 和 flex-wrap 的属性.box { flex-flow: <flex-direction> <flex-wrap>;}justify-content项目在主轴上的对齐方式alig...

2020-04-19 23:44:37 307

原创 Flex主轴与交叉轴

Flex中提出了一个重要的概念——轴它两个轴:主轴 和 交叉轴默认情况下主轴是水平的:下面我们用Flex布局的方式实现三个小盒子的水平垂直居中: <style> .box{ width: 200px; height: 200px; border: 1px solid; } div{ width: 50px; height: 50px;...

2020-04-18 20:11:38 3960

原创 百度地图API的基础使用

准备工作1.注册百度账号2.申请成为百度开发者3.获取服务密钥4.使用相关服务功能http://lbsyun.baidu.com/index.php?title=jspopular/guide/getkeydemo<!DOCTYPE html><html lang="en"><head> <!-- 适应移动端页面展示 --> &...

2020-04-11 20:57:28 323

原创 JavaScript 存储对象的使用及区别

JavaScript 存储对象Web 存储 API 提供了 sessionStorage (会话存储) 和 localStorage(本地存储)两个存储对象来对网页的数据进行添加、删除、修改、查询操作。存储对象属性1.length 返回存储对象中包含多少条数据。存储对象方法1.key(n) 返回存储对象中第 n 个键的名称2.getItem(keyname) 返回指定键的值3.set...

2020-04-10 20:18:10 413

原创 ES6 Promise

ES6 PromiseThe Promise object represents the eventual completion (or failure) of an asynchronous operation, and its resulting value.直译过来就是:Promise对象表示异步操作的最终完成(或失败)及其结果值作为一个新对象,他的存在肯定是有其意义的,比如优化了写法...

2020-03-27 19:48:15 214

空空如也

空空如也

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

TA关注的人

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