
JavaScript
文章平均质量分 87
FIND方式
这个作者很懒,什么都没留下…
展开
-
事件循环原理
程序运行需要有它自己专属的内存空间,可以把这块内存空间简单的理解为进程每个应用至少有一个进程,进程之间相互独立,即使要通信,也需要双方同意。原创 2023-10-17 16:58:43 · 288 阅读 · 0 评论 -
浏览器是如何渲染页面的?
reflow 的本质就是重新计算 layout 树。当进行了会影响布局树的操作后,需要重新计算布局树,会引发 layout。为了避免连续的多次操作导致布局树反复计算,浏览器会合并这些操作,当 JS 代码全部完成后再进行统一计算。所以,改动属性造成的 reflow 是异步完成的。也同样因为如此,当 JS 获取布局属性时,就可能造成无法获取到最新的布局信息。浏览器在反复权衡下,最终决定获取属性立即 reflow。repaint 的本质就是重新根据分层信息计算了绘制指令。原创 2023-10-17 16:57:35 · 194 阅读 · 0 评论 -
ES6(ECMAScript6 )入门
文章目录代码块声明变量变量的解构赋值扩展符...字符串解构赋值对象的解构赋值字符串的扩展遍历器接口模板字符串函数的扩展函数形参 默认值箭头函数 =>********************数组方法的扩展拆开数组复制数组合并数组对象方法 扩展0代码块声明变量let 作用域 提前生成 重复声明constfor循环+计时器******************变量的解构赋值按照对应的结...原创 2020-09-22 16:29:19 · 230 阅读 · 0 评论 -
ES6 类型定义-箭头函数- promise
var提前声明变量 √作用域: 函数let重复定义 ×提前声明变量 ×作用域:块级暂时性死区 √ : 只要块级作用域内存在let命令,它所声明的变量就“绑定”(binding)这个区域,不再受外部的影响。var tmp = 123;if (true) { tmp = 'abc'; // ReferenceError 封闭作用域。凡是在声明之前就使用这些变量,就会报错。 let tmp; tmp = 123; //123}const暂时性死区 √重复定.原创 2020-09-02 12:21:28 · 214 阅读 · 0 评论 -
JS数据 --- 字符串 / 数组
文章目录StringArray数组的增加、修改、删除splice数组的截取slice和拼接contact数组转换为字符串join toString排序sort和排列查找find indexOfStringstr.length 返回字符串长度str.toUpperCase()转换成大写str.toLowerCasw()转换成小写查找str.indexOf("x") /lastInde...原创 2020-04-27 20:14:13 · 327 阅读 · 0 评论 -
Object 对象与方法
JavaScript 对象是键值对的容器键值对通常写法为 name : value (键与值以冒号分割)。键值对在 JavaScript 对象通常称为 对象属性。访问对象属性两种方式: obj.property 或 obj [“property”]访问对象方法obj.property()对象object循环遍历.each()可以遍历数组和对象 $.each(obj,function(key,value){ console.log("键:"+key+";"+"键值:"+obj[k原创 2020-07-28 11:58:59 · 392 阅读 · 0 评论 -
JS--数组-- 扁平化 / 去重
文章目录reduce()扁平化(flatten())reduce()reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。array.reduce(function(total, currentValue, currentIndex, arr), initialValue)参数描述total 必需。初始值, 或者计算结束后的返回值。currentValue 必需。当前元素currentIndex 可选。当前元素的索引原创 2020-07-28 11:39:33 · 315 阅读 · 0 评论 -
cookies、sessionStorage和localstorage
文章目录缓存cookie 缓存页面信息到浏览器localStorage 本地缓存sessionStorage 临时缓存不同点字符串 加密转码缓存cookie 缓存页面信息到浏览器存储的数据量比较小,浏览器数据存储,下次读取,有效期 //创建cookie document.cookie="cookieName"; expires //有效期 path //当前cookie的 有效路径 不写默认有效路径//设置cookie document.cookie原创 2020-05-28 18:48:46 · 143 阅读 · 0 评论 -
前端---javaScript面试题总结
JS最初null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN。目前的用法null表示"没有对象",即该处不应该有值.用法是:(1) 作为函数的参数,表示该函数的参数不是对象。(2) 作为对象原型链的终点。Object.getPrototypeOf(Object.prototype)// nullundefined表示"缺少值",就是此处应该有一个值,但是还没有定义。用法是:(1)变量被声明了,但没有赋值时 var i // ..转载 2020-05-25 21:53:23 · 153 阅读 · 0 评论 -
Node.js 连接 MySql 渲染页面
文章目录nodejs获取mysql数据将mysql数据渲染到页面nodejs获取mysql数据创建一个connection连接connection执行SQL语句,获取数据关闭connectionvar mysql = require('mysql'); //调用MySQL模块//1. 创建一个connectionvar connection = mysql.createC...原创 2020-04-25 12:30:53 · 1314 阅读 · 0 评论 -
JS try/catch/finally/throw 语句
try 语句使您能够测试代码块中的错误。catch 语句允许您处理错误。throw 语句允许您创建自定义错误。finally 使您能够执行代码,在 try 和 catch 之后,无论结果如何。try { tryCode - 尝试执行代码块}catch(err) { catchCode - 捕获错误的代码块 throw (err);} finally { ...原创 2020-04-24 18:13:59 · 179 阅读 · 0 评论 -
Node.js EJS
这里写自定义目录标题安装引入渲染2.1 同步渲染 let html = ejs.rende(str,data,options) str标签语法2.2 异步渲染 ejs.renderFile(file,data,options,(err,str)=>{}) file页面可以绑定data2.3 option标签语法<% 脚本 %> 用于流程控制,无输出<%_ ...原创 2020-04-11 22:12:06 · 203 阅读 · 0 评论 -
Node.js 不同文件类型加载不同响应头
服务器运行开始前对路径进行解析 获取pathname 这样可避免get传值模拟简单路由的配置根据目录找到对应的文件原创 2020-04-10 16:32:01 · 387 阅读 · 0 评论 -
Node.js 异步处理数据
4解决方案原创 2020-04-10 20:33:17 · 221 阅读 · 0 评论 -
Node.js get/post传值 express封装路由模块
文章目录get传值post传值<form action="/index" method="post"> </form><!-- method = "post" / "get" -->get传值直接获取 解析路径的get传值 let query = path.query;http.createServer((req, res) => { ...原创 2020-04-10 16:09:26 · 298 阅读 · 0 评论 -
Node.js 基础
文章目录http模块 服务器http协议模块url模块 路径解析模块 url.parseexports或者module.exports暴露属性或者方法配置文件package.json文件第三方包的安装node 属于服务器端的语言 服务端javascript V8引擎运行 性能很快直接运行js到服务器端http模块 服务器http协议模块加载http模块 let http=requir...原创 2020-04-06 21:23:22 · 433 阅读 · 0 评论 -
Node.js fs文件系统模块
文章目录判断是 文件/目录 stat读取目录里的文件 readdir创建mkdir/移除rmdir 目录读取文件 read读取文件内容readFile写入文件 内容覆盖 writeFile追加写入文件 appendFile单文件删除 unlink rmdir文件流读取流 readStream写入流 writeStream管道流 边读边写链式流 应用于管道流fs模块文件系统异步方法性能更高...原创 2020-04-06 21:00:25 · 183 阅读 · 0 评论 -
HTML5 Canvas
文章目录Canvas标签属性方法图形绘制剪裁图片渐变矩形fillRect线条stroke弧形文本文字fillTextCanvas标签JS 绘制 图形 动画var canvas =document.querySelector("#canvas0");width height,设置Canvas画布大小canvas.width=500; canvas.height=500;创建并返回一个Canv...原创 2020-03-18 15:56:02 · 353 阅读 · 0 评论 -
JS Date对象
Dateobj=new Date() 获取当前系统时间年:obj.getFullYear()月:obj.getMonth() 0-11对应1月~12月日:obj.getDate()星期:obj.getDay() 1-6+0 0表示星期天小时:obj.getHours()分:obj.getMinutes()秒:obj.getSeconds()obj.toString() 把 ...原创 2020-03-18 15:54:13 · 108 阅读 · 0 评论 -
JS 设计模式
文章目录0工厂模式函数模式原型模式原生JS设计单例模式策略模式订阅模式0工厂模式函数模式原型模式原生JS设计单例模式策略模式表单验证订阅模式...原创 2020-03-11 16:18:46 · 93 阅读 · 0 评论 -
JS 继承 原型链
文章目录继承原型继承构造继承组合继承:原型继承+构造继承寄生组合继承:避免两次调用父类构造函数实例继承拷贝继承(占内存,不建议使用)继承原型继承继承方式:√×子类实例 是父类?√×给父类传递参数√×子类构造属性方法√×继承父类构造属性方法√×继承父类原型√×多继承√×构造继承组合继承:原型继承+构造继承寄...原创 2020-03-11 13:46:00 · 116 阅读 · 0 评论 -
JS 自定义对象
文章目录对象属性 方法操作对象属性 方法操作原创 2020-03-11 13:28:17 · 151 阅读 · 0 评论 -
HTTP中GET、POST、PUT和DELETE的区别
与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。GET一般用于获取/查询资源信息,而POST一般用于更新资源信息GET请求的数据会附在URL之后(把数据放置在HTTP协...原创 2020-03-04 20:26:10 · 200 阅读 · 0 评论 -
Ajax基础 跨域
文章目录Ajax简介Js-Ajax对象 XMLhttprequest对象Ajax简介从API获取后台数据,应用于局部刷新技术,异步请求。异步请求:请求和后续代码同时执行同步请求:等待请求执行完成在执行后续代码Js-Ajax对象 XMLhttprequest对象实例化对象http var http=new XMLhttpRequest();http.open(method,url,a...原创 2020-03-03 10:48:21 · 137 阅读 · 0 评论 -
JS基础入门
文章目录Js层级关系Js:javascript是一门轻量级的脚本语言,主要分为三大模块:Js层级关系浏览器---->文档—>html----->head/body—>…浏览器-----在js中叫做window,我们把window称为浏览器对象文档------在js中叫做document,我们把document称为文档对象Html、head、body叫做元素对象...原创 2020-02-24 18:16:08 · 77 阅读 · 0 评论 -
表单验证
文章目录提交验证## 表单属性 <form action="" method="get" class="formData">//action=""提交给后台路径 后台可获接受提交的数据//method="get/post"// get input的name表单数据会显示到路径后边;(不安全,量大)// post 隐式提交(安全相对较高,数据量小)...原创 2020-02-23 19:10:30 · 121 阅读 · 0 评论 -
正则表达式
文章目录次数字符范围\ 转义字符 \n 匹配的就是换行 \\ 匹配的是\^ 代表的是 开始符号 $ 代表的是 结束符号次数* //代表的是匹配一个字表达是零次或者多次 zooo zo* 等价 {0,}+ //代表的是匹配前面的字表达是 一次或者多次 zoooo zo+ {1,}? //代表匹配前面的字表达是 零次或者一次 do(es)? {0,1} ...原创 2020-02-22 19:11:43 · 267 阅读 · 0 评论 -
Jq-动画效果
文章目录显示隐藏向上滑动显示,向下滑动隐藏淡入淡出显示隐藏自定义设置CSS动画队列控制显示隐藏//s speed//[e] 切换效果,默认是"swing",可用参数"linear"//[fn] 动画完成时执行的函数,每个元素执行一次.show([s,[e],[fn]]).hide([s,[e],[fn]]).toggle([s],[e],[fn])向上滑动显示,向下滑动隐藏sl...原创 2020-02-20 19:02:19 · 152 阅读 · 0 评论 -
jQuery事件
文章目录事件事件添加与移除事件切换基本事件事件对象事件事件添加与移除事件切换基本事件事件对象原创 2020-02-14 18:05:11 · 93 阅读 · 0 评论 -
jQuery文档处理--包裹
a.warp(b); //复制一个b b包裹aa.warpall(b); //b>all a,其他同级元素在b外a.warpinner(b); //a>b>a.chlidren******************************************a.unwarp(); //移除a.parent...原创 2020-02-14 13:00:58 · 157 阅读 · 0 评论 -
jQuery属性-CSS内容-文档
文章目录引入jQuery选择器获取jQuery属性操作属性CSS 类HTML代码/文本/值jQuery CSS操作CSS位置尺寸引入jQuery分别在head body引入window.jQuery=window.$=jQuery jQuery(function(){}); = $(function(){});jQuery对象和JS对象区别,转化:$("")[0]jQuery选择器获取...原创 2020-02-14 18:08:18 · 136 阅读 · 0 评论 -
JS-定时器
文章目录一次 setInterval(js funcition,milliseconds)循环 setTimeout(js funcition,milliseconds)以电脑刷新频率1000ms/60循环一次 setInterval(js funcition,milliseconds)间隔指定的毫秒数不停地执行指定的代码清除 递归 多参数var timer = null;functio...原创 2020-01-28 15:15:54 · 157 阅读 · 0 评论 -
JS--基础题目2--节点类型--事件委托
文章目录节点类型如何判断节点类型(简述常用属性)事件的委托?有什么好处?什么是事件流?事件捕获?或者冒泡?节点类型如何判断节点类型(简述常用属性)事件的委托?有什么好处?事件委托就是利用事件冒泡,只制定一个时间处理程序,就可以管理某一类型的所有事件好处:减少与dom的交互次数,提高性能例子:节点树,div>ul>li>a;比如给最里面的a加一个click点击事件,那么...原创 2020-01-09 16:21:53 · 401 阅读 · 0 评论 -
JS--2048小游戏
文章目录游戏规则1 创建地图2 开始游戏&结束游戏3 即时渲染4.触屏上下左右滑动5.滑动map改变游戏规则每次随机产生2 4 上下左右滑动时相同的数字相加 直到不能继续相加时游戏结束map 中数字代表对应数字 0 2 4 8 16 32···var map=[ [0,0,0,0], [0,0,0,0], [0,0,0,0], ...原创 2020-01-05 22:09:53 · 308 阅读 · 0 评论 -
JavaScript - BOM浏览器对象模型
文章目录屏幕滚动条屏幕window.onload()={ 可视区域宽高`document.documentElement.clientHieght/clientWidth` body宽高`document.body.clientHeight/clienWidth` 屏幕实际宽高(包含任务栏)`window.screen.height/width` 屏幕实际宽高(不包含任务栏)`win...原创 2019-12-25 18:13:14 · 116 阅读 · 0 评论 -
JS---实现数据结构/排序算法
排序算法冒泡排序快速排序插入排序选择排序冒泡排序前往后后依次比较相邻两个元素大小,大的元素往后挪,比较完第一遍后,最大的元素排到了数组的最后一位从第i(1)个数字开始比较与后面的数字比较,小的放在前面位置互换一直比较到最后时间复杂度为O(n^2)快速排序快速排序的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据比另一部分的所有数据要小,再按这种方法对...原创 2019-12-25 17:52:10 · 163 阅读 · 0 评论 -
搜索下拉框+验证码
JS验证码核实JS下拉框搜索验证码<input type="text" id="yzm1"/><span id="yzm2"></span><input type="button" class="yz"/><i class="con"></i><p>1.span内生成4个随机10以内整数,更换背景.点...原创 2019-12-14 15:50:15 · 296 阅读 · 0 评论 -
JS下拉框搜索
<html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> *{ margin:0; padding:0; box-sizing: b...原创 2019-12-14 15:46:30 · 394 阅读 · 0 评论 -
JS-验证码
<html><head lang="en"> <meta charset="UTF-8"> <title>验证码</title> <style> input,span,i{ border: dashed 1px red; height: ...原创 2019-12-14 13:56:31 · 189 阅读 · 0 评论 -
JS函数/ JS数据类型- number boolean date
JS数据对象NumberDate赋值计时器StringArrayMathNumberisNaN(x) - 非数字值num.toString(radix) 把数字转换为字符串/radix:转换成不同进制数radix:2 - 数字以二进制值显示/8 - 数字以八进制值显示/16 - 数字以十六进制值显示如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,如果前缀为 0 和 ...原创 2019-12-11 21:50:30 · 499 阅读 · 0 评论