![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javaScript
文章平均质量分 71
Apple-hcc
这个作者很懒,什么都没留下…
展开
-
HTTP强缓存和协商缓存
浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档。浏览器缓存是Web性能优化的重要方式。那么浏览器缓存的过程究竟是怎么样的呢?原创 2023-02-23 16:14:14 · 262 阅读 · 1 评论 -
deepClone
deepClone原创 2023-02-09 18:15:41 · 60 阅读 · 0 评论 -
实现文件下载功能
文件下载功能原创 2022-09-15 16:22:13 · 1142 阅读 · 0 评论 -
ES6模块
ES6模块如前面所述,CommonJS和AMD都是运行时加载。ES6在语言规格层面上实现了模块功能,是编译时加载,完全可以取代现有的CommonJS和AMD规范,可以成为浏览器和服务器通用的模块解决方案。这里关于ES6模块我们项目里使用非常多,所以详细讲解。ES6模块使用——export(1)导出一个变量export var name = 'pengpeng';(2)导出一个函数export function foo(x, y){}(3)常用导出方式(推荐)// person.jsco原创 2022-04-21 10:15:50 · 1907 阅读 · 0 评论 -
exports与module.exports的区别
exports与module.exports的区别牢记一条原则:无论使用 exports暴露成员,或是 module.exports 暴露成员,最终暴露的结果,都是以 module.exports 所指向的对象为准。1.module 对象看一下 module对象长什么样子2.module.exports 和 exports 的联系在 module 对象中,包含 exports 属性,而我们就是通过这个属性(module.exports),向外暴露(共享)成员的。exports 是 node 为转载 2022-04-20 19:01:09 · 148 阅读 · 0 评论 -
Object.create()与new object()和{}的区别
Object.create()与new object()和{}的区别对比Object.create(null) 创建的对象是一个空对象,在该对象上没有继承 Object.prototype 原型链上的属性或者方法,例如:toString(), hasOwnProperty()等方法Object.create()方法接受两个参数:Object.create(obj,propertiesObject) ;obj:一个对象,应该是新创建的对象的原型。propertiesObject:可选。该参数对象是一原创 2022-03-30 15:34:37 · 372 阅读 · 0 评论 -
js格式化日期和事件
时间格式化原创 2022-03-12 10:57:05 · 666 阅读 · 0 评论 -
Object.prototype.toString.call(obj)检测对象类型
Object.prototype.toString.call(obj)检测对象类型?最近做了做一道js面试:使用typeof bar === "object"检测”bar”是否为对象有什么缺点?如何避免?这是一个十分常见的问题,用 typeof 是否能准确判断一个对象变量,答案是否定的,null 的结果也是object,数组的结果也是 object,有时候我们需要的是 “纯粹” 的 object 对象。如何避免呢?比较好的方式是:console.log(Object.prototype.toStrin原创 2022-01-06 10:31:43 · 163 阅读 · 0 评论 -
Array.prototype.slice.call()方法的理解
Array.prototype.slice.call()方法的理解在看别人代码时,发现有这么个写法:[].slice.call(arguments, 0),这到底是什么意思呢?1、基础1)slice() 方法可从已有的数组中返回选定的元素。start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从转载 2022-01-05 17:05:12 · 167 阅读 · 0 评论 -
正则表达式
对正则表达式中常用的元字符和方法、属性进行总结,并进行对比区分。原创 2022-01-04 14:39:56 · 833 阅读 · 0 评论 -
requestAnimationFrame
requestAnimationFrame问题源于一道面试题:用js实现一个无限循环的动画。首先想到的是定时器!doctype html><html lang="en"><head> <title>Document</title> <style> #e{ width: 100px; height: 100px; backgroun原创 2021-12-29 11:54:31 · 328 阅读 · 0 评论 -
Vue.set()和this.$set()
从vue源码解析Vue.set()和this.$set()Vue.set()和this.$set()应用的场景平时做项目的时候难免不会对 数组或者对象 进行这样的操作,结果发现,怎么页面没有重新渲染。 data: { arr: [1, 2], obj1: { a: 3 } }});vueInstance.$data.arr[0] = 3; // 这种骚操作页面不会重新渲染vueInstance.$data.obj1.b = 3; // 这种骚操作页面不会重新渲染查了一下原创 2021-12-28 14:49:20 · 672 阅读 · 0 评论 -
js DOM
js DOMJavaScript = ES + DOM + BOM。Document在浏览器中,文档对象document表示整个HTML页面,它是window对象的属性,是一个全局对象。文档信息document对象包含一些页面共有信息,如:URL、domain和referrer。URL:当前页面的完整URLdomain:页面的域名referrer:链接到当前页面的那个页面的URL。如果当前页面没有来源,则referrer属性是空字符串。这些信息都可以在请求的HTTP头部信息中获取,只是原创 2021-12-28 11:59:56 · 328 阅读 · 0 评论 -
JS获取元素的大小(高度和宽度)
JS获取元素的大小(高度和宽度)在 JavaScript中,使用下面 3 组属性可以获取元素的高度和宽度。如表所示。元素尺寸属性说明clientWidth获取元素可视部分的宽度,即 CSS 的 width 和 padding 属性值之和,元素边框和滚动条不包括在内,也不包含任何可能的滚动区域clientHeight获取元素可视部分的高度,即 CSS 的 height 和 padding 属性值之和,元素边框和滚动条不包括在内,也不包含任何可能的滚动区域offsetWi原创 2021-12-24 16:58:28 · 28763 阅读 · 0 评论 -
JS获取鼠标位置(鼠标坐标)
JS获取鼠标位置(鼠标坐标)在 JavaScript中,当事件发生时,获取鼠标的位置是件很重要的事件。由于浏览器的不兼容性,不同浏览器分别在各自事件对象中定义了不同的属性,说明如下表所示。这些属性都是以像素值定义了鼠标指针的坐标,但是由于它们参照的坐标系不同,导致精确计算鼠标的位置比较麻烦。属性说明兼容性clientX以浏览器窗口左上顶角为原点,定位 x 轴坐标所有浏览器,不兼容 SafariclientY以浏览器窗口左上顶角为原点,定位 y 轴坐标所有浏览器,不兼容原创 2021-12-24 16:44:55 · 8307 阅读 · 0 评论 -
关于鼠标事件的screenY,pageY,clientY,layerY,offsetY属性
关于鼠标事件的screenY,pageY,clientY,layerY,offsetY属性screenY 鼠标相对于显示器屏幕左上角的偏移pageY 鼠标相对于页面左上角的偏移 (其值不会受滚动条的影响) IE9之下并不支持这个属性 但是可以写点代码计算出来。 jQuery中的实现:// Calculate pageX/Y if missing and clientX/Y availableif ( event.pag原创 2021-12-24 16:39:12 · 212 阅读 · 0 评论 -
document.documentElement和document.body的区别
document.documentElement和document.body的区别网页中获取滚动条卷去部分的高度,可以通过 document.body.scrollTop 来获取,比如使div跟着滚动条滚动:<div id="div" style="width:100px;height:100px;background:#ccc;position:absolute;"></div>window.onscroll = function (){ var div = doc原创 2021-12-24 16:33:31 · 166 阅读 · 0 评论 -
jq版本搜索文本关键字高亮
<!DOCTYPE html><html lang=“en”><head> <meta charset=“UTF-8”> <meta name=“viewport” content=“width=device-width, initial-scale=1.0”> <title>Document</title> <style> .highlight {转载 2021-12-23 11:42:33 · 94 阅读 · 0 评论 -
Array总结
Array(数组)对象数组是值的有序集合,数组中的每个值称为一个元素,每个元素在数组中都有一个数字位置,称为索引,索引从 0 开始,依次递增.创建 Array 对象的语法格式如下:var arr = new Array(values);var arr = Array(values);其中,values 为数组中各个元素组成的列表,多个元素之间使用逗号分隔。var fruits = new Array( "apple", "orange", "mango" );console.log(frui原创 2021-12-23 11:35:11 · 82 阅读 · 0 评论 -
字符串总结
字符串方法总结创建 String 对象的语法格式如下:var val = new String(value);var val = String(value);其中参数 value 为要创建的字符串或字符串对象。String 对象中的属性属性描述constructor获取创建此对象的 String() 函数的引用length获取字符串的长度prototype通过该属性您可以向对象中添加属性和方法示例代码如下:var str = new String(原创 2021-12-23 11:34:07 · 342 阅读 · 0 评论 -
FF代替IE的window.event的方法,不用带参
FF代替IE的window.event的方法,不用带参event代表事件的状态,例如触发event对象的元素、鼠标的位置及状态、按下的键等等;event对象只在事件发生的过程中才有效。firefox里的event跟IE里的不同,IE里的是全局变量,随时可用;firefox里的要用参数引导才能用,是运行时的临时变量。**在IE/Opera中是window.event,在Firefox中是event;**而事件的对象,在IE中是window.event.srcElement,在Firefox中是even原创 2021-12-23 11:33:01 · 231 阅读 · 0 评论 -
vue中如何使用event对象
vue中如何使用event对象一、event 对象(一)事件的 event 对象你说你是搞前端的,那么你肯定就知道事件,知道事件,你就肯定知道 event 对象吧?各种的库、框架多少都有针对 event 对象的处理。比如 jquery,通过它内部进行一定的封装,我们开发的时候,就无需关注 event 对象的部分兼容性问题。最典型的,如果我们要阻止默认事件,在 chrome 等浏览器中,我们可能要写一个:event.preventDefault();而在 IE 中,我们则需要写:event.re原创 2021-12-23 11:30:59 · 1671 阅读 · 1 评论 -
js事件处理函数传值
js事件处理函数传值https://blog.csdn.net/a1059526327/article/details/106392305/1. HTML事件处理程序在最早的HTML事件处理程序中我们可以直接传入多个参数:<div id="btn" onclick="clickBtn(event,2)">任务总数</div><script> function clickBtn(event,val){ console.log(event)原创 2021-12-23 11:29:53 · 812 阅读 · 0 评论 -
js中事件对象event
js中事件对象eventhttps://blog.csdn.net/lhjuejiang/article/details/79455801一、Event对象Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。事件通常与函数结合使用,函数不会在事件发生前被执行!当一个事件发生的时候,和当前这个对象发生的这个事件有关的一些详细信息(包括导致事件的元素、事件的类型、以及其它与特定事件相关的信息等。这个对象是在执行事件时,浏览器通过函数传递过来的。)都会被原创 2021-12-23 11:28:44 · 438 阅读 · 0 评论 -
vue搜索关键字高亮
<template> <el-input class="fd-ipt" placeholder="请输入内容" v-model="inputValue" @keyup.enter.native="searchText"> </el-input> <div class="container" v-for="(v, k, i) in h...原创 2021-12-23 11:20:40 · 455 阅读 · 0 评论