- 博客(37)
- 资源 (3)
- 收藏
- 关注
原创 背景音乐自动播放(不受浏览器的限制,不需要对浏览器进行交互和修改)
总所周知,声音无法自动播放这个在 IOS/Android 上面一直是个惯例,桌面版的 Safari 在 2017 年的 11 版本也宣布禁掉带有声音的多媒体自动播放功能,紧接着在 2018 年 4 月份发布的 Chrome 66 也正式关掉了声音自动播放,也就是说 audio autopaly 和 video autoplay 在桌面版浏览器也将失效。而且网上搜索如何解决这个问题,大部分会提到...
2020-03-29 13:57:43 6071 5
原创 完全二叉树标准(详细图解)
标准完全二叉树是效率很高的数据结构。众所周知,完全二叉树是由满二叉树而引出来的。对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。特点:(1)所有的叶结点都出现在第k层或k-l层(层次最大的两层)(2)对任一结点,如果其右子树的最大层次为L,则其左子树的最大层次为L或L+l。我想这个概念大部分人都能理解或者早已通...
2020-02-23 15:58:56 70993 12
原创 Visual Studio Code 新手教程
Visual Studio Code 新手教程下载如何安装安装成功后对于初学者的引入如何打开网页浏览器如何创建项目(这里以html文件创建为例)下载直接前往百度进行下载或者Visual Studio官网。如何安装根据安装包的基本指引,无任何多的操作,能安装在C盘更好!安装成功后对于初学者的引入打开软件将会呈现这样一个页面对于初学者来说,这样一个全是由英文组成的软件肯定会不适应,所以...
2019-12-23 20:27:29 15174 6
原创 浅克隆和深克隆
什么是浅克隆和浅克隆基本定义:浅克隆:直接将存储在栈中的值赋值给对应变量,如果是基本数据类型,则直接赋值对应的值,如果是引用类型,则赋值的是地址。深克隆:就是把数据赋值给对应的变量,从而产生一个与源数据不相干的新数据(数据地址已变化)。深拷贝,是拷贝对象各个层级的属性。使用:基本数据类型的使用:let a = 1;let b = a;console.log(a); //1a = 2;console.log(b); //1把 a 的值赋给 b,a的值发送变化时,b不会受到影响引
2020-08-26 22:05:52 306
原创 JS的异步加载和时间线
JSON理解和使用我们先说一下json:JSON是一种传输格式,它是服务端和客户端之间的数据传输的。JSON规范代码是类似对象的数据就像把对象用单引号引起来的例子:‘{“name”: “lilei”,“age”:18}’在这里有两个方法一个是stringify和parse这两个的作用理解:stringify的使用方法和理解使用方法var she = JSON.stringify();理解:这个方法是将一个JavaScript值(对象或者数组)转换为一个 JSON字符串pars
2020-08-25 19:44:51 230
原创 jQuery的插件fullpage的使用和基本实现
fullpage的使用fullPage.js 是一个基于 jQuery 的插件,它能够很方便、很轻松的制作出全屏网站,主要功能有:支持鼠标滚动支持前进后退和键盘控制多个回调函数支持手机、平板触摸事件支持 CSS3 动画支持窗口缩放窗口缩放时自动调整可设置滚动宽度、背景颜色、滚动速度、循环选项、回调、文本对齐方式等等兼容性这个的是他自己下载的插件里面的jQuery的是1.8.3版本的,但是jQuery的兼容是兼容jQuery1.7以上的版本的。这个对浏览器的兼容是对IE8以上和其他四
2020-08-19 18:18:53 893
原创 audio标签的样式修改
由于html5的流行,现在移动端大多数的需求都可以使用audio来播放音频,但您可能只是需要很简单的播放/停止效果,但不同的浏览器上的audio样式却不尽人意,那么要怎么改变这个样式呢,其实它的原理比较简单,就是把写audio的时候不要用controls属性,隐藏原生的audio, 然后用div之类标签,定义css样式美化起来用来显示播放器的效果,最后用js捕获audio事件,基本就是src路径、pause暂停、load加载、play播放这些。下面是audio标签的一些相关API:控制函数功能说明lo
2020-08-19 13:05:41 5639 2
原创 微格式
什么是微格式?是以现成、流行的web技术如高度语义化的XHTML来一致地表达、传递和存储具有一定普遍形式和用途的数据结构。微格式(Microformat),是通过语意相关让内容人机可读。网页上的允许的微格式数据包括事件、人物、地点等,它可以被其他的软件检测到,并提取出相应的信息,以及对信息进行索引、搜索、跨平台的参考,把这些信息以其他形式重复使用或组合。背景介绍由于HTML中缺少相应的元素,很难突出显示人、地点或日期等类型的信息。为了解决这个问题,有一组开发人员决定开发一套标准的命名约定盒标记模式来
2020-08-12 12:52:29 761
原创 async、await运用原理
前面我们讲到了宏任务和微任务,我们先来回顾一下:JavaScript 异步编程由于 JavaScript 是单线程执行模型,因此必须支持异步编程才能提高运行效率。异步编程的语法目标是让异步过程写起来像同步过程。运行机制在执行栈中执行一个宏任务。执行过程中遇到微任务,将微任务添加到微任务队列中。当前宏任务执行完毕,立即执行微任务队列中的任务。当前微任务队列中的任务执行完毕,检查渲染,GUI线程接管渲染。渲染完毕后,js线程接管,开启下一次事件循环,执行下一次宏任务(事件队列中取)。我
2020-08-10 19:58:39 545
原创 解决win10系统不能使用cnpm指令
以下是我遇到的问题:在安装启动服务的时候会报“cnpm : 无法加载文件 C:\Users\XXX\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本”。解决方案1) 在开始菜单里找到Windows PowerShell.并以管理员身份运行这里要注意的就是必须要以管理员身份运行。2) 输入 set-ExecutionPolicy RemoteSigned 回车3) 输入 A 回车4) 再输入get-ExecutionPolicy,回车 出现RemoteSi
2020-08-05 13:26:18 2994
原创 Git基本
git 简介git(/ɡɪt/)是一个分布式版本控制软件,最初由林纳斯・托瓦兹(Linus Torvalds)创作,于 2005 年以 GPL发布。最初目的是为更好地管理 Linux 内核开发而设计。应注意的是,这与 GNU Interactive Tools(一个类似Norton Commander 界面的文件管理器)有所不同。 git 最初的开发动力来自于 BitKeeper 和Monotone。git 最初只是作为一个可以被其他前端(比如 Cogito 或 Stgit)包装的后端而开发的,但后来
2020-08-04 18:22:48 472
原创 node.js的buffer
Buffer与字符编码介绍当前buffer和字符串之间转换时,可以指定字符编码。如果未指定字符编码,则使用utf-8作为默认值。例:const buf = Buffer.from('hello world', 'utf8');console.log(buf.toString('hex'));// 打印: 68656c6c6f20776f726c64console.log(buf.toString('base64'));// 打印: aGVsbG8gd29ybGQ=console.l
2020-07-29 14:49:20 232
原创 TypeScript和JavaScript的基础语法对比
JavaScript里面的数据类型JavaScript的数据类型分为2大类:原始数据类型和引用数据类型原始数据类型: object、 number、 string、 boolean、 null、 undefined引用数据类型: object类型的Array 、Date、functionJavaScript中的变量【1】JS中变量的声明: var 变量名=值;【2】JS中变量的使用注意的事项: A. js中的变量的名称和java中标识符的命名保持一致就可以了。 B. js中
2020-07-29 13:08:39 976
原创 JavaScript API 的使用(百度地图)
百度地图JavaScript API 的使用在使用这些控件和方法之前我们要做的准备:1、我先要创建一个在百度app文档里面的密匙注意:在那个白名单里面只需要填写一个星号就行,星号是表示所有人都可进行调用这个密匙的意思2、再创建一个html文件,在文件你面要写上一个存放地图的div,然后在css样式表里面写这样的一个样式:<style> html{ height: 100%; } body{
2020-07-22 00:38:05 512
原创 如何避免频繁的去执行函数(函数防抖和节流)
我们在平时的前端开发中,会有很多场景会频繁触发事件。比如以下情况:window对象的resize、scroll事件拖拽时的mousemove事件文字输入、自动完成的keyup事件但是我们有时候,为了避免在某一时间段内事件的频繁使用增加了服务器的压力,我们这个时候就要讲到函数防抖和节流了!函数防抖函数防抖是指对于当事件在某个时间段被触发后再执行的回调,如果这个时候又重新被触发,则重新开始计时,短时间内多次触发同一事件,只执行最后一次,或者只执行最开始的一次,中间的不执行。1). 封装一个函数
2020-07-20 20:01:59 949
原创 JS 微任务和宏任务(面试题常用)
javascript事件循环同步任务:直接通过主线程执行,如script代码异步任务: 进入Event Table,并注册回调函数——> Event Queue,等主线程的执行栈为空时候,读取Event Queue里面的函数就,进入主线程。如setTimeout,promise.then()等;javascript是单线程的,但是浏览器是多线程的,典型的浏览器有如下线程:javascript引擎线程界面渲染线程浏览器事件触发线程Http请求线程关于javaScript的单线程
2020-07-14 19:18:19 11534 5
原创 Ajax的Promise应用
异步回调的问题之前处理异步是通过纯粹的回调函数的形式进行处理很容易进入到回调地狱中,剥夺了函数return的能力问题可以解决,但是难以读懂,维护困难稍有不慎就会踏入 回调地狱—嵌套层次深,不好维护在实际的使用中,有非常多的应用场景我们不能立即知道应该如何继续往下执行。最常见的一个场景就是ajax请求。通俗来说,由于网速的不同,可能你得到返回值的时间也是不同的,这个时候我们就需要等待,结果出来了之后才知道怎么样继续下去。// 简单的ajax原生实现var context;var xhr =
2020-07-13 19:41:43 1946
原创 Ajax与PHP的小插曲
首先来说说各自的意思AjaxAjax就是异步的js和XMLAjax即"Asynchronous Javascript And XML" (异步JavaScript 和XML), 是指一种创建交互式、快速动态网页应用的作用: - 网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。 - 通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 - 使用ajax技术对网页进行局部更新 (向后台发送 了
2020-06-16 12:52:47 167 1
原创 jQuery与$冲突问题
Jquery的$ 命名冲突在Jquery中,$ 是JQuery的别名,所有使用 $ 的地方也都可以使用JQuery来替换,如 $ ("#msg")等同于JQuery("#msg") 的写法。然而,当我们引入多个js库后,在另外一个js库中也定义了$ 符号的话,那么我们在使用$符号时就发生了冲突。原生js和jQuery加载模式不同原生js会等DOM加载完成,图片等资源也加载完成再执行;jQuery会等DOM加载完成,但不会等图片等资源加载完成就会执行。多个入口函数window.onloa
2020-05-17 17:10:30 744
原创 微信小程序—系统当前日期的提取
一般来说,小程序获取系统当前时间与PC端获取大同小异,大致来说分为两种:自己创建方法,直接 new Data(); var date = new Date(); //年 var Y = date.getFullYear(); //月 var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1); //日 var D = date.
2020-05-16 12:24:10 966 2
原创 JS 阻止事件冒泡和默认事件
如何阻止事件冒泡,这里先拓展个知识点:DOM事件流存在三个阶段:事件捕获阶段、处于目标阶段、事件冒泡阶段。DOM标准事件流的触发的先后顺序为:先捕获再冒泡。即当触发dom事件时,会先进行事件捕获,捕获到事件源之后通过事件传播进行事件冒泡。不同的浏览器对此有着不同的实现,IE10及以下不支持捕获型事件,所以就少了一个事件捕获阶段,IE11、Chrome、Firefox、Safari等浏览器则同...
2020-04-12 12:39:52 1405 1
原创 JS 页面像素小数部分精确取值
Problem:JS获取HTML等元素的宽高时不能精确获取,只能得到整数部分像素,不能获取小数位px。Example:这里就很醒目的可以发现,当你想要获取HTML元素的宽时,得到的数字却是一个整数,但是HTML实际的值却是小数位,所以就要提到一个名词:浮点数。例如:JavaScript 中的数字类型只有 Number 一种,Number 类型采用 IEEE754 标准中的 “双精度...
2020-04-12 11:40:39 671
原创 Node小知识
1.前端、后端都是干什么的?前端:HTML,CSS,Javascript后端:服务端+数据库服务端: java php .net python node(是一门技术,不是语言,核心语法是ECMAScript)数据库: 前端 + 后端 前端是可以和任意的一个服务端语言,任意的一门数据库进行搭配前端 + java + mysql前端 + php + mysql前端 + .net + ...
2020-03-29 14:58:08 167
原创 JS dom节点实现移上、移下的效果(表格)
如何用DOM节点去实现表格内容移上 移下的效果,我们这里需要了解两个知识点!previousSibling属性返回选定节点的上一个同级节点(在相同树层级中的前一个节点)返回节点以节点对象返回语法:document.getElementById("tr").previousSibling注意:如果不存在这样的节点,则该属性返回 nullExp:previoussibling获取的兄...
2020-03-23 15:55:16 1371
原创 pdo连接数据库(拓展)
简介**PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口。PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。PDO随PHP5.1发行,在PHP5.0的PECL扩展中也可以使用,无法运行于之前的PHP版本。**安装<font color = "blue">你可以通过 PHP 的 phpin...
2020-03-23 14:23:51 211
原创 如何搭建VUE脚手架
什么是node.js?Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。安装node.js推荐官网下载安装,下载地址:http://nodejs.cn/download/打开命令行工具:node --version如果出现版本号,说明已安装。什么是npmnp...
2020-03-15 13:39:25 162
原创 DOM节点以及节点之间的关系
三大属性所有的Node(元素、属性、文本)对象都是document的 子代节点nodeType 节点类型(number)document 9element 1attrbute 2text 3节点名 (nodeName)document -> #document标签元素 -> 全大写的标签名属性名 -> attitude文本节点 -> #tex...
2020-03-15 13:15:02 2354
原创 闭包
什么是闭包?函数与对其状态即词法环境(lexical environment)的引用共同构成闭包。也就是说,闭包可以让你从内部函数访问外部函数作用域。标题在JavaScript,函数在每次创建时生成闭包。闭包的特点1. 在一个函数内部定义另外一个函数,并且返回内部函数或者立即执行内部函数。2. 内部函数可以读取外部函数定义的局部变量3. 让局部变量始终保存在内存中。也就是说,闭包...
2020-03-01 12:08:56 170
原创 2048小游戏(原生js基础代码篇)
今天在这里,我将给各位呈现一个简单的游戏代码。想必大家都接触过2048这个小游戏吧,在悠闲时间用于消遣时间最好不过了,那么,我给大家写一个2048最基本的原生js代码。HTML:<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>2048小游戏</titl...
2020-02-25 12:55:57 6373 4
原创 什么是数据结构和算法,一维数据结构,冒泡排序,选择排序,快排,栈和队列
一维数据结构先来讨论下数组的特性1.存储在物理空间上是连续的2.底层的数组长度是不可变的我们的计算机的内存中会有很多这样的空间,我们称这种空间叫空间碎片这样的不是连续的存储空间我们都称为空间碎片电脑清除空间碎片:需要cpu工作,对你的内存进行重排,这样是非常消耗资源的,也是大牛不会这样写代码的原因图例:一维数据结构的两种,数组和链表,大家可以整理和消化下,然后我们来说数组和链表的...
2020-02-23 13:39:16 221
原创 二叉树,二叉树遍历,二叉树搜索
树形结构树形结构应该就比较容易理解了,树是二维数据结构中的一种,至于说二叉树又是树的一种了。树和图的区别在这里说明一下,重点:树形结构为二维数据结构中的一种特殊结构1.树形结构有一个根节点2.树形结构没有回路(就是只能一直往下,有回路的称为图,树是图的一种)3.树形结构我们称为 有向循环图几个关键字,拓补结构,树,图,有向循环图二叉树就三种,一种根节点,一种节点,一种叶子节点...
2020-02-23 12:58:41 196
原创 JS预编译对象 AO对象与GO对象
javascript中的构造函数对象JavaScript 是面向对象的语言,引用数据类型都是对象,包括函数也是对象,同时还可以通过 Object 对象自定义对象。但是,和其他面向对象语言(如 Java 等高级语言)比,也有很大差异,JS 中没有类或接口的概念,即不能直接定义抽象的类,也不能直接实现继承。不过,为了编程的方便,我们可以在 JS 中模拟类和继承的行为。创建对象实例或类(虽然没有类的概...
2020-02-23 12:28:39 886
原创 VUE 基本指令 (代码)
HTML 部分<div id="username"> {{message}} <!-- v-model 绑定 响应 message--> <input type="text" v-model="message"> <!-- 绑定Dom click --> <button v-on:click="tabbnave">点击反转...
2020-01-07 19:50:22 252
原创 日期对象函数
创建日期对象 var 变量名 = new Date("日期字符串"); 如果创建日期对象的时候, 不传参数 得到的是北京时间创建日期的方法 : 1. 参数为日期字符串 var date = new Date("日期字符串"); 2. 可以传入七个参数 分别是 年月日 时分秒 毫秒 参数至少要传2个 var date = new Date(201...
2020-01-07 19:32:04 329
原创 函数概述
函数为什么要使用函数?函数声明函数参数函数返回值为什么要使用函数?在开发过程中, 一段代码在多个地方执行, 而且不连续执行 那我们怎么办?? 用函数函数声明 1. 函数声明 function 函数名() { 函数体 : 代码块 } 函数声明的特点 : 只是将一段代码保存在变量里面, 但是不会执行 2. 函数调用 调用语法 :...
2020-01-07 18:45:54 511
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人