js
浅笑如伤
这个作者很懒,什么都没留下…
展开
-
js 读取剪切板的内容,并生成图片
在 Web 应用程序中,Clipboard API 可用于实现剪切、复制和粘贴功能。对象,在剪贴板访问完成后被兑现。如果剪贴板访问被拒绝,promise 也会被拒绝。只有http协议为https或者host为localhost可以使用。所有 Clipboard API 的方法都是异步的;2、clipboard的方法。写入任意数据至操作系统剪贴板。从剪贴板读取数据(比如图片)写入文本至操作系统剪贴板。原创 2023-05-22 18:12:00 · 1169 阅读 · 0 评论 -
发布vue 的npm包
发布vue 的npm包原创 2022-11-11 14:21:56 · 525 阅读 · 0 评论 -
fetch发送post请求
fetch('https://...', { method: 'post', body: JSON.stringify(base), headers: { 'Content-Type': 'application/json' } }).then(function(data) { })原创 2021-10-18 21:30:02 · 28507 阅读 · 0 评论 -
时间格式化Date.prototype.format
Date.prototype.format = function (fmt = "yyyy-MM-dd hh:mm:ss") { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes().原创 2021-10-18 21:28:02 · 1092 阅读 · 0 评论 -
正则匹配两个【】之间的字符串
匹配邻近的【】let str="未查询到邮箱【zhangsan@163.cn】的用户信息【ccc】【中的】";let reg1=/【([\u4e00-\u9fa5]*|\w*@\w*.\w*|\w*)】/g; //全部匹配str.match(reg1); // ["【zhangsan@163.cn】", "【ccc】", "【中的】"]let reg2=/【([\u4e00-\u9fa5]*)】/g; //只匹配中文str.match(reg2); // ["【中的】"]let原创 2021-03-26 17:40:30 · 499 阅读 · 0 评论 -
中划线转换成驼峰命名(正则匹配之边界匹配)
1、正则\b 匹配一个单词边界,即字与空格间的位置。 \B 非单词边界匹配。 //全匹配'-set-all-client'.match(/(-\w)/g)// ["-s", "-a", "-c"]//转换成驼峰function toHump(name) { return name.replace(/(-\w)/g, function(letter){ return letter.substring(1).toUpperCase(); });}.原创 2021-02-25 19:39:35 · 504 阅读 · 0 评论 -
js手写实现call、apply、bind函数
1、callcall() 方法在使用一个指定的 this 值和若干个指定的参数值的前提下调用某个函数或方法。先看下面这个例子:var person = { fullName: function(city, country) { return this.firstName + " " + this.lastName + "," + city + "," + country; }}var person1 = { firstName:"Bill", lastName: "转载 2020-09-11 15:36:54 · 797 阅读 · 0 评论 -
Promise(2)——基本使用
Promise是一个函数返回的对象,我们可以在它上面绑定回调函数,这样我们就不需要在一开始把回调函数作为参数传入这个函数了1、链式调用连续执行两个或者多个异步操作是一个常见的需求,在上一个操作执行成功之后,开始下一个的操作,并带着上一步操作所返回的结果。const promise2 = doSomething().then(successCallback, failureCallback);doSomething().then(function(result) { return ...原创 2020-06-30 17:38:54 · 273 阅读 · 0 评论 -
js判断是不是上周
1、得到本周周一零点的时间戳,将当前要处理的日期转为时间戳,如果小于本周周一零点的时间戳,则为上周时间/*** monstamp为周一零点的时间戳 ***/let date = new Date()let week = date.getDay() == 0 ? 7 : date.getDay() //把周日作为一周最后一天let mon = this.time2date(1 - week).datelet monstamp = new Date(mon).getTime() - 8 *原创 2020-06-30 15:02:37 · 800 阅读 · 0 评论 -
判断js是否加载完成,动态加载js完回调
1、动态加载js,js完成后进行回调动态创建script标签,加入页面,js加载完成后执行回调函数。监听是否加载完成分为IE浏览器和非IE浏览器(Chrome、FF等)。发现IE10及IE10以下支持readyState,Edge和IE11不支持readyState属性(返回当前文档的状态),Edge、IE11、Chrome、FF均支持onload属性var sc = documen...原创 2018-12-26 18:16:02 · 6886 阅读 · 4 评论 -
js 严格模式简介
一、概念ECMAScript 5的严格模式是采用具有限制性JavaScript变体的一种方式,从而使代码显示地 脱离“马虎模式/稀松模式/懒散模式“(sloppy)模式。严格模式不仅仅是一个子集:它的产生是为了形成与正常代码不同的语义。不支持严格模式与支持严格模式的浏览器在执行严格模式代码时会采用不同行为。所以在没有对运行环境展开特性测试来验证对于严格模式相关方面支持的情况下,就算采用了严格模式也不一定会取得预期效果。严格模式代码和非严格模式代码可以共存,因此项目脚本可以渐进式地采用严格模式转载 2020-06-05 17:53:08 · 198 阅读 · 0 评论 -
js Arguments对象笔记
1、概念arguments 是一个对应于传递给函数的参数的类数组对象。arguments对象是所有(非箭头)函数中都可用的局部变量。你可以使用arguments对象在函数中引用函数的参数。2、使用arguments对象不是一个Array。它类似于Array,但除了length属性和索引元素之外没有任何Array属性。function demo(a){ console.log(arguments[0]);}demo(); //undefineddemo(1); //1argu.原创 2020-06-05 17:13:55 · 148 阅读 · 0 评论 -
js 防抖和节流笔记
防抖和节流都可以用于 mousemove、scroll、resize、input等事件,他们的区别在于防抖只会在连续的事件周期结束时执行一次,而节流会在事件周期内按间隔时间有规律的执行多次。原创 2020-06-03 17:03:51 · 165 阅读 · 0 评论 -
vue中使用防抖函数
一、基本概念在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时,计时结束执行回调。 函数防抖的基本思想是设置一个定时器,在指定时间间隔内运行代码时清楚上一次的定时器,并设置另一个定时器,知道函数请求停止并超过时间间隔才会执行。二、使用1、直接使用const debounce = (function() { let timer = 0; return function(callback, ms = 200) { //设置默认200ms clea...原创 2020-06-02 18:19:24 · 6739 阅读 · 0 评论 -
获取元素相对于视口的位置 Element.getBoundingClientRect() 理解及笔记
1、概念Element.getBoundingClientRect()方法返回元素的大小及其相对于视口的位置。2、语法返回值是一个 DOMRect 对象,这个对象是由该元素的 getClientRects() 方法返回的一组矩形的集合,就是该元素的 CSS 边框大小。返回的结果是包含完整元素的最小矩形,并且拥有left, top, right, bottom, x, y, width, 和 height这几个以像素为单位的只读属性用于描述整个边框。除了width 和 height 以外的属性是.原创 2020-06-01 11:13:39 · 3305 阅读 · 0 评论 -
js 原型对象和原型链理解
function Person(name,age,gender) {this.name=name;this.age=age;this.gender=gender;this.say=function () { alert(this.name) }}var person1=new Person('钟女士',80,'女');var person2=new Person('张女士',80,'女');console.log(person2)console.log(person1)...转载 2020-05-20 18:47:46 · 179 阅读 · 0 评论 -
js 惰性函数理解
概念:在javascript里函数可以动态定义,如果创建了一个新函数并且将其分配给保存了另外函数的同一个变量,那么新函数覆盖旧函数。常用于初始化功能。原理:同名函数覆盖重写适用场景:在固定的应用环境不会发生改变,频繁使用同一判断逻辑,一次判定,多次直接使用来个经典例子:创建XHR请求,需要进行能力检测,如下function createXHR(){ if (typeof XMLHttpRequest != "undefined"){ return new XMLHttpR原创 2020-05-28 18:27:40 · 294 阅读 · 0 评论