javascript
qiphon3650
成功需要努力,知识源于分享!
展开
-
js 生成随机数的方式
js 生成随机数的方法归类原创 2023-08-30 16:18:18 · 175 阅读 · 0 评论 -
ant-design-charts wheel 双指移动放大
【代码】ant-design-charts wheel 双指移动放大。原创 2023-04-07 00:13:18 · 350 阅读 · 0 评论 -
axios 保存 流文件
axios 保存文件原创 2022-12-20 12:13:58 · 499 阅读 · 0 评论 -
canvas绘制圆角头像
canvas 绘制圆角头像,绘制圆角矩形原创 2022-09-24 08:46:56 · 465 阅读 · 2 评论 -
js从文件流获取minetype
获取 文件 后缀 从 hex原创 2022-08-18 20:05:50 · 786 阅读 · 0 评论 -
decodeURI decodeURIComponent 区别
decodeURI 只能解码 encodeURI 处理的字符串decodeURIComponent 可以处理 encodeURIComponent 和 encodeURI 处理的字符串原创 2022-07-07 18:39:32 · 430 阅读 · 0 评论 -
JS复制图片到剪切板 读取剪切板
navigator.clipboard实现复制图片转载 2022-07-06 17:57:05 · 2589 阅读 · 0 评论 -
navigator.sendBeacon使用说明
navigator.sendBeacon使用说明MDN文档W3C使用方式发送 blob datavar data = { ajax_data: 22 };// 只能 添加 type 字段,无法添加其它内容var blob = new Blob([JSON.stringify(data)], {type : 'application/json'});// Content-Type application/json navigator.sendBeacon('ajax.ph原创 2022-05-19 17:55:05 · 1966 阅读 · 0 评论 -
JSON.parse
JSON.parse概述JSON.parse() 方法解析一个JSON字符串,构造由字符串描述的JavaScript值或对象。可以提供可选的reviver函数以在返回之前对所得到的对象执行变换。语法JSON.parse(text[, reviver])text[, reviver])参数text要被解析成JavaScript值的字符串,查看 JSON 对象学习的JSON 语法的说明。reviver 可选如果是一个函数,则规定了原始值如何被解析改造,在被返回之前。返回值Ob转载 2022-02-21 17:50:52 · 6831 阅读 · 0 评论 -
formdata 发送 filelist
formdata 发送 filelist只需要将fileappend到formdata的相同key中即可const fd = new FormData()fd.append('file', File1)fd.append('file', File2)原创 2022-01-06 09:29:35 · 729 阅读 · 0 评论 -
js 错误处理
js 错误处理How to avoid uncaught async errors in Javascript翻译 2021-11-08 13:36:00 · 204 阅读 · 0 评论 -
canvas.toBlob bug
canvas.toBlob bug最近在使用canvas.toBlob 将canvas转为 File 时遇到一个问题,blob 的回调函数拿到的值是null,当图片质量大于 4M 时,临界值还没有测试,后续会继续补充。如果有遇到相同问题的朋友推荐使用 canvas.toDataURL然后用下面的函数将 base64 转为 Blob/** * 转换图片的 base64 到 blob */export const base64ToBlob = (data: string) => { va原创 2021-10-26 11:02:48 · 1150 阅读 · 0 评论 -
prettier一般代码规范
Prettier options配置文档{"tabWidth": 2,"useTabs": false,"semi": true,"singleQuote": true,"quoteProps": "as-needed","jsxSingleQuote": true,"trailingComma": "all","bracketSpacing": true,"jsxBracketSameLine": false,"arrowParens": "avoid","parser": "b原创 2021-09-08 09:47:11 · 726 阅读 · 0 评论 -
what‘s news in Es6+ (es6+新增api)
news in Es6+ (es6+新增api)TC39 stagesstage 0 提案新的功能计划或一个还没有实现的需求。需求讨论阶段[stage 1] (https://github.com/tc39/proposals/blob/master/stage-1-proposals.md) 提案这个阶段主要是解决存在的问题和定义API结构stage 2 草案stage1的问题已经解决。这些新特性规范预计会出现在未来的版本中stage 3 选举提案被彻彻底底细致的查看,翻译 2021-08-16 14:45:52 · 131 阅读 · 0 评论 -
关于touch 事件
关于touch 事件“touches”, optional and defaulting to [], of type Touch[], that is a list of objects for every point of contact currently touching the surface. touchstart 中存在值“targetTouches”, optional and defaulting to [], of type Touch[], that is a list o原创 2021-01-06 20:28:25 · 229 阅读 · 0 评论 -
js sleep 函数实现方法
js sleep 函数实现方法// while 实现// function sleep(time) {// var t = Date.now() + time// while(t > Date.now()){}// }// console.log(1)// sleep(2000)// console.log(2)// promise 实现const sleep = time => new Promise(resolve => setTimeout(()=>原创 2020-11-19 14:41:37 · 517 阅读 · 0 评论 -
mvc mvp mvvm
mvc mvp mvvmmvcm 数据层(数据查询)、v 视图层(数据展示)、c 控制器(逻辑处理);web1.0 时代 html模板开发web2.0 时代 ajax 盛行mvc 模式业务逻辑主要在 controller,前端 view已经具备了处理用户事件的能力,当每个事件都流经 controller 时,这层变得非常臃肿。而且在 mvc 中view和controller时一一对应的,view+controller = 组件mvc 模型原创 2020-11-13 12:47:26 · 161 阅读 · 0 评论 -
for await ... of
for await … ofconst simulateDelay = (val, delay) => new Promise((resolve) => setTimeout(() => resolve(val), delay));class RandomNumberGenerator { [Symbol.asyncIterator]() { return { next: async () => { return simulateDe转载 2020-09-25 10:56:51 · 997 阅读 · 0 评论 -
node-sass 二进制文件 报语法错误 ELF
node-sass 二进制文件 报语法错误 ELF下载对应版本的 node-sass文件查询版本方法 node -p "[process.platform, process.arch, process.versions.modules].join('-')"如 linux-x64-72,就下载这个版本的 node-sass 文件 linux-x64-72_binding.node在当前项...原创 2020-02-05 02:15:15 · 992 阅读 · 0 评论 -
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 12.x
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 12.x 解决办法npm rebuild node-sass就这一句话原创 2019-12-26 15:24:22 · 975 阅读 · 0 评论 -
string.split(separator,limit) 字符串转成数组
定义和用法split() 方法用于把一个字符串分割成字符串数组。提示: 如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。注意: split() 方法不改变原始字符串。separator可选。字符串或正则表达式,从该参数指定的地方分割 string Object。转载 2017-05-16 10:27:42 · 1971 阅读 · 0 评论 -
js数组排序
Javascript 的sort()函数在默认情况下使用字母数字(字符串Unicode码点)排序。所以[1,2,5,10].sort() 会输出 [1, 10, 2, 5].要正确的排序一个数组, 你可以用 [1,2,5,10].sort((a, b) => a — b)很简单的解决方案, 前提是你得知道有这么个坑原创 2017-06-27 10:36:43 · 284 阅读 · 0 评论 -
new Date()
new Date() 可以接受:没有参数: 返回当前时间一个参数 x: 返回1970年1月1日 + x 毫秒。 了解 Unix 的人知道为什么。new Date(1, 1, 1) 返回 1901, 二月 , 1号。因为,第一个参数表示1900年加1年,第二个参数表示这一年的第二个月(因此是二月) — 脑回路正常的人会从1开始索引 — ,第三个参数原创 2017-06-27 10:38:46 · 686 阅读 · 0 评论 -
常用正则表达式
一、校验数字的表达式数字:^[0-9]*$n位的数字:^\d{n}$至少n位的数字:^\d{n,}$m-n位的数字:^\d{m,n}$零和非零开头的数字:^(0|[1-9][0-9]*)$非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$带1-2位小数的正数或负数:原创 2017-06-27 10:49:20 · 283 阅读 · 0 评论 -
js数组去重
JavaScript的数组去重是一个老生常谈的话题了。随便搜一搜就能找到非常多不同版本的解法。昨天在微博上看到一篇文章,也写数组去重,主要推崇的方法是将利用数组元素当作对象key来去重。我在微博转发了“用对象key去重不是个好办法…”然后作者问什么才是推荐的方法。细想一下,这样一个看似简单的需求,如果要做到完备,涉及的知识和需要注意的地方着实不少,于是诞生此转载 2017-06-27 11:10:45 · 622 阅读 · 0 评论 -
js获取设置元素属性
有两种方式可以修改DOM对象的属性: "."运算符 和 getAttribute(setAttribute)方法。div id='test' class="cls" dir="ltr" title="wott" ss="ss">div> 对于style,className的设置,通常是使用“.”运算符来实现 Js代码 el.style.bac原创 2017-07-08 11:09:53 · 470 阅读 · 0 评论 -
全屏蒙板添加
divclass="address_runyuan"style="margin:0 auto;width:1200px;">style>.runyuanAddr{text-align:center;font-size:40px;}.address_runyuan h4{text-align:center;height:50px;margin:20px a原创 2017-07-31 15:25:22 · 1240 阅读 · 0 评论 -
js中的call和apply
使用 .call(), .apply() 和 .bind() 改变上下文.call() 和 .apply()函数用于在调用函数时改变上下文。这给了你令人难以置信的编程能力(和一些终极权限来驾驭代码)。要使用call或apply函数,您只需要在函数上调用它,而不是使用一对括号调用函数,并将新的上下文作为第一个参数传递。函数自己的参数可以在上下文之后传递。(愚人码头注:call或app转载 2017-08-06 15:32:34 · 217 阅读 · 0 评论 -
柯里化
f(x)和g(x)合成为f(g(x)),有一个隐藏的前提,就是f和g都只能接受一个参数。如果可以接受多个参数,比如f(x,y)和g(a,b, c),函数合成就非常麻烦。这时就用刀了柯理化,柯理化就是把多个参数的函数转为单个参数的函数// 柯里化之前function add(x, y) { return x + y;}add(1, 2) // 3// 柯里转载 2017-09-04 10:24:11 · 259 阅读 · 0 评论 -
自执行函数表达式
(function () { /* code */ } ()); // 推荐使用这个(function () { /* code */ })(); // 但是这个也是可以用的// 由于括弧()和JS的&&,异或,逗号等操作符是在函数表达式和函数声明上消除歧义的// 所以一旦解析器知道其中一个已经是表达式了,其它的也都默认为表达式了var i = function () { return 10; }转载 2017-07-29 10:12:55 · 576 阅读 · 0 评论 -
eval()函数
eval()函数会将传入的字符串当做JavaScript代码进行执行。语法Editeval(string)返回值执行指定代码之后的返回值。如果返回值为空,返回undefined描述Editeval()是全局对象的一个函数属性。eval()的参数是一个字符串。如果字符串表示的是表达式,eval()会对表达式进行求值。如果参数表示一个或多个JavaS转载 2017-09-04 13:43:34 · 4190 阅读 · 0 评论 -
闭包
闭包的介绍我们先看看几本书中的大致介绍:1.闭包是指有权访问另一个函数作用域中的变量的函数2.函数对象可以通过作用域关联起来,函数体内的变量都可以保存在函数作用域内,这在计算机科学文献中称为“闭包”,所有的javascirpt函数都是闭包3.闭包是基于词法作用域书写代码时所产生的必然结果。4.. 函数可以通过作用域链相互关联起来,函数内部的变量可以保存在其他转载 2017-08-27 16:05:17 · 446 阅读 · 0 评论 -
javascript的offset、client、scroll
offsetTop 指元素距离上方或上层控件的位置,整型,单位像素。 offsetLeft 指元素距离左方或上层控件的位置,整型,单位像素。 offsetWidth 指元素控件自身的宽度,整型,单位像素。 offsetHeight 指元素控件自身的高度,整型,单位像素。 网页可见区域宽:document.body.clientWidth 网页可见区域高:document.bod转载 2017-09-05 16:51:47 · 389 阅读 · 0 评论 -
编码格式转换
function toUnicode(s){ return s.replace(/([\u4E00-\u9FA5]|[\uFE30-\uFFA0])/g,function(newStr){ return "\\u" + newStr.charCodeAt(0).toString(16);转载 2017-09-13 17:31:14 · 418 阅读 · 0 评论 -
将JSON的字符串解析成JSON数据格式
在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数。 2. 使用Function对象来进行返回解析。 使用eval函数来解析,并且使用jquery的each方法来遍历 用jquery解析JSON数据的方法,作为jquery异步请求的传输对象,jquery请求后返回的结果是json对象,这里考虑的都是服务器返回JSON形式的转载 2017-08-29 10:38:18 · 1438 阅读 · 0 评论 -
js对象中什么是可枚举性(enumerable)?
概念可枚举性(enumerable)用来控制所描述的属性,是否将被包括在for...in循环之中。具体来说,如果一个属性的enumerable为false,下面三个操作不会取到该属性。* for..in循环* Object.keys方法* JSON.stringify方法var o = {a:1, b:2};o.c = 3;Object.definePropert转载 2017-09-15 13:27:13 · 2235 阅读 · 0 评论 -
js起步
JavaScript 参考文档JavaScript 指南控制流程Block一个块语句可以用来管理零个或多个语句。该区块是由一对大括号分隔。break终止当前的循环,switch,label 语句,使程序跳到下一个语句执行。continue终止执行当前或标签循环的语句,直接执行下一个迭代循环。Empty空语句用来表示没有语句的情况,尽管 JavaScr转载 2017-09-15 17:14:38 · 281 阅读 · 0 评论 -
js 位运算
转载自http://www.cnblogs.com/xljzlw/p/4231354.html我们可能很少在编程中用位运算,如果没深入学习,可能也很难理解。平时的数值运算,其实是要先转换成二进制再进行运算的,而位运算就是直接进行二进制运算,所以位运算的执行效率肯定是更高的。下面通过一些实例来加深对位运算的理解。按位与(&)&&运算符我们都知道,只有两个都为真,结果才为真。&转载 2017-09-25 15:23:00 · 290 阅读 · 0 评论 -
javascript 方法汇总
javascript 方法汇总Number 对象方法方法描述toString把数字转换为字符串,使用指定的基数。toLocaleString把数字转换为字符串,使用本地数字格式顺序。toFixed把数字转换为字符串,结果的小数点后有指定位数的数字。toExponent转载 2017-09-25 15:50:06 · 291 阅读 · 0 评论 -
哪些地方会出现css阻塞,哪些地方会出现js阻塞?
js 的阻塞特性:所有浏览器在下载 JS 的时候,会阻止一切其他活动,比如其他资源的下载,内容的呈现等等。直到 JS 下载、解析、执行完毕后才开始继续并行下载其他资源并呈现内容。为了提高用户体验,新一代浏览器都支持并行下载 JS,但是 JS 下载仍然会阻塞其它资源的下载(例如.图片,css文件等)。 由于浏览器为了防止出现 JS 修改 DOM 树,需要重新构建 DOM 树的情况,所以就会转载 2017-09-20 10:52:49 · 2418 阅读 · 0 评论