Javascript经验分享
经验分享
研究参
这个作者很懒,什么都没留下…
展开
-
【最简单的方法】js判断字符串是否为JSON格式
function isJSON(str) { if (typeof str == 'string') { try { var obj=JSON.parse(str); if(typeof obj == 'object' && obj ){ return true; }else{ return false; } } catch(e) {转载 2022-02-24 11:05:22 · 18286 阅读 · 1 评论 -
JS生成随机字符串
生成随机字符串function randomString(randomLen, min, max){ var str = "", range = min, arr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n',原创 2022-01-05 09:43:25 · 415 阅读 · 0 评论 -
JS生成 UUID的方法
JS生成 UUID的方法方法一function getUUID(){ var s = []; var hexDigits = "ABCDEFabcdef0123456789"; for(var i = 0; i < 36; i++) { s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1); } s[14] = "4"; // bits 12-15 of the time_hi_and_version field t原创 2022-01-05 09:40:50 · 621 阅读 · 0 评论 -
正则表达式贪婪与非贪婪模式
什么是正则表达式的贪婪与非贪婪匹配const str = 'abcdec'// 默认贪婪匹配const reg = /ab.*c/console.log(reg.exec(str)); // abcdec// 非贪婪匹配const reg2 = /ab.*?c/console.log(reg2.exec(str)); // abc贪婪匹配:正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配。如上面使用模式reg匹配字符串str,结果为:abcdec(ab.*c)。非贪婪匹配:就是原创 2022-01-04 15:14:26 · 87 阅读 · 0 评论 -
JavaScript前端实现压缩图片功能
JavaScript前端实现压缩图片功能为什么要前端来压缩图片接下来看下详细步骤转自:https://www.jb51.net/article/182078.htm 侵删为什么要前端来压缩图片最近在做一个移动端h5上传图片的功能,本来这个功能并不复杂,只需要将图片文件通过axios传到服务端即可,但是考虑到现在手机设配的拍照功能十分强大,随便一张照片都能动辄五六兆,而服务端的要求是上传图片必须小于两兆,而且直接传这么大图片,带宽它也受不了,所以前端进行压缩图片就成了一个必要的环节。压缩效果首先介转载 2021-12-08 10:15:20 · 1655 阅读 · 0 评论 -
文件各种上传,离不开的表单
作为程序员的我们,经常会要用到文件的上传和下载功能。到了需要用的时候,各种查资料。有木有…有木有…。为了方便下次使用,这里来做个总结和备忘。利用表单实现文件上传最原始、最简单、最粗暴的文件上传。前端代码://方式1<form action="/Home/SaveFile1" method="post" enctype="multipart/form-data"> <input type="file" class="file1" name="file1" />转载 2021-12-28 11:49:22 · 493 阅读 · 0 评论 -
ES6 新特性
ES6 新特性ES6 新特性1.let 关键字2.const 关键字3.变量的解构赋值4.模板字符串5. 简化对象写法6.箭头函数7.参数默认值8.rest 参数9.扩展运算符10.Symbol向对象中添加方法Symbol 的内置属性11.迭代器 `Symbol.iterator`12.生成器调用传递参数异步操作实例-1异步操作实例-213.PromisePromise 基本语法使用 Promise 读取文件使用 Promise 封装 AJAX 请求then 的返回值Promise 链式调用案例14.Set原创 2022-01-04 15:51:54 · 653 阅读 · 0 评论 -
ES7 新特性
ES7 新特性ES7 新特性`includes` 检测数组中是否存在`**` 乘方ES7 新特性includes 检测数组中是否存在const mingzhu = ["西游记", "红楼梦", "三国演义", "水浒传"];// 判断console.log(mingzhu.includes("西游记")); // trueconsole.log(mingzhu.includes("金瓶梅")); // false** 乘方console.log(2 ** 10); // 1024con原创 2022-01-04 15:58:32 · 438 阅读 · 0 评论 -
ES8 新特性
ES8 新特性ES8 新特性async 函数await 表达式1.await 基本语法2.async 与 await 结合读取文件3.async 与 await 结合发送 AJAX 请求对象方法扩展ES8 新特性async 函数返回的结果如果不是一个 Promise 类型的对象,返回值就是成功async function fn() { return "尚硅谷";}const result = fn();console.log(result); // promise函数 {<fu原创 2022-01-04 15:59:58 · 189 阅读 · 0 评论 -
ES9 新特性
ES9 新特性ES9 新特性对象展开正则扩展命名捕获分组反向断言dotAll 模式ES9 新特性对象展开rest 参数Rest 参数与 spread 扩展运算符在 ES6 中已经引入,不过 ES6 中只针对于数组,在 ES9 中对象提供了像数组一样的 rest 参数和扩展运算符function connect({ host, port, ...user }) { console.log(host); // localhost console.log(port); // 3000原创 2022-01-04 16:01:12 · 186 阅读 · 0 评论 -
ES10 新特性
ES10 新特性ES10 新特性对象方法扩展`Object.fromEntries`字符串方法扩展`trimStart` 与 `trimEnd`数组方法扩展`flat` 将多维数组转化为低维数组`flatMap` 相当于 `map + flat`Symbol 扩展`Symbol.prototype.description` 获取 Symbol 描述字符串ES10 新特性对象方法扩展Object.fromEntries二维数组 转为 对象const result = Object.fromEnt原创 2022-01-04 16:02:20 · 124 阅读 · 0 评论 -
ES11 新特性
ES11 新特性ES11 新特性私有属性Promise 扩展字符串扩展可选链操作符动态 import`BigInt` 大整型`globalThis` 绝对全局对象ES11 新特性私有属性私有属性只能在 class 里访问class Person { // 公有属性 name; // 私有属性 #age; #weight; // 构造方法 constructor(name, age, weight) { this.name = name; this.#a原创 2022-01-04 16:03:24 · 226 阅读 · 0 评论