
JavaScript
文章平均质量分 52
关于JavaScript的一些记录
D_lunar
这个作者很懒,什么都没留下…
展开
-
正则表达式 /\((.*)\)/ 的含义
正则表达式 /\((.*)\)/ 的含义总结:左右的两个斜杠 / 是正则表达式限制符号;\( 和 )\ 匹配开始和结束位置 ,匹配结果要包括开始和结束位置;() 表示另存一份不包括匹配开始和结束位置的匹配内容.* 表示匹配全部内容...原创 2022-07-22 13:29:46 · 3191 阅读 · 0 评论 -
console.time和console.timeEnd比较for和forEach的性能
成对使用console.time()和console.timeEnd()比较for 和 forEach谁消耗的时间短:let obj={ name:'Lucy', age:18, gender:'Female'};let obj2={ name:'Luke', age:18, gender:'Male' }let arr=[];for(let i=0;i<100;i++){//修改arr的长度 arr.push(obj);} arr.push(obj2).原创 2021-12-03 14:19:03 · 285 阅读 · 0 评论 -
$.ajax的封装和异步变同步使用
1、封装 $.ajax/** * 封装 $.ajax请求 * @param {Object} type GET|POST * @param {Object} url * @param {Object} data */function request(type, url, data) { return new Promise((resolve, reject) => { $.ajax({ type: type, url: httpUrl + url, data.原创 2021-12-03 13:35:19 · 871 阅读 · 0 评论 -
预请求options成功,正式的get请求失败
前后端分离项目,跨域请求由于需要携带token而不能避免自定义header,因此,在正式的请求前面总是会发送一个预请求options请求。预请求options后的get请求,查询时间跨度大时,查询经常失败。这是因为请求超时造成的,ajax请求的超时时间设置的大一点,例如30s...原创 2021-10-25 14:41:13 · 2034 阅读 · 2 评论 -
JavaScript Array(数组)对象
参考文章:JavaScript Array(数组)对象 | 菜鸟教程、JavaScript Array 对象 | 菜鸟教程、ES6 入门教程1、创建数组的方式//1: 常规方式:var myCars=new Array();myCars[0]="Saab"; myCars[1]="Volvo";myCars[2]="BMW";//2: 简洁方式:var myCars=new Array("Saab","Volvo","BMW");//3: 字面:var myCar原创 2021-09-26 10:58:39 · 684 阅读 · 0 评论 -
ES6 Set数据结构
1、Set 的特点ES6 提供了新的数据结构 Set。Set本身是一个构造函数,用来生成 Set 数据结构。它类似于数组,但是成员的值都是唯一的,没有重复的值。1.1、Set 结构不会添加重复的值const set = new Set();[2, 3, 5, 4, 5, 2, 2].forEach(x => set.add(x));console.log(set);1.2、向 Set 加入值的时候,不会发生类型转换向 Set 加入值的时候,不会发生类型转换,所以5..原创 2021-09-24 11:24:15 · 317 阅读 · 0 评论 -
ES6 Map数据结构
1、Map的含义JavaScript 的对象(Object),本质上是键值对的集合(Hash 结构),但是传统上只能用字符串当作键。这给它的使用带来了很大的限制。为了解决这个问题,ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。也就是说,Object 结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应,是一种更完善的 Hash 结构实现。如果你需要“键值对”的数据结构,Map 比 Object 更合原创 2021-09-22 16:57:56 · 206 阅读 · 0 评论 -
javaSCript正则表达式
1、教程:https://www.w3school.com.cn/js/js_obj_regexp.asp2、编码测试器:https://www.w3school.com.cn/tiy/t.asp?f=jseg_regexp_test原创 2021-02-03 08:55:57 · 138 阅读 · 0 评论 -
js 关于console.log时得到[object object]的解决办法
结论:用逗号连接,就不会出现[object object]的问题。原创 2021-09-02 15:06:47 · 832 阅读 · 0 评论 -
JavaScript 正则表达式
1、什么是正则表达式?正则表达式是由一个字符序列形成的搜索模式。正则表达式可用于所有文本搜索和文本替换的操作。由/正则表达式主体/修饰符(可选) 组成一个正则表达式。2、支持正则表达式的 String 对象的方法方法 描述 参数 返回值 search 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置索引。原创 2021-08-03 10:05:37 · 150 阅读 · 0 评论 -
ES6学习笔记(一)
1. let和var命令let声明的变量,只在它所在的代码块有效,对作用域之外没有影响;var声明的变量,在全局范围内都有效。var命令声明变量,会发生变量提升。即脚本开始运行时,变量已经存在了,但是没有值,所以会输出undefined。let命令声明变量,不会发生变量提升。这表示在声明它之前,变量是不存在的,这时如果用到它,就会抛出一个错误。let命令声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死区”(temporal dead zone,简称 TDZ)。let不允许在相同作用域原创 2021-07-30 10:08:54 · 244 阅读 · 0 评论 -
js replace 替换字符串中的最后一个匹配项
let str="http:8080/api";let str2 = "http:webapi/api";let str3 = "http:webAPI/api";let res = str.replace('api','baby');let res2 = str2.replace(/(.*)api/,'$1baby');let res3 = str3.replace('api','baby');console.log(res); //http:8080/babyconsole.log(re.原创 2021-07-29 10:38:35 · 2857 阅读 · 1 评论 -
js 记录一些好的文章地址
阮一峰的个人网站ES6 入门教程ES6、ES7、ES8、ES9、ES10新特性一览1、Object.assign()的使用2、JSON.stringify和JSON.parse()是如何使用的?3、ES6解构赋值的简单使用4、ES6,新增数据结构Map的用法5、es6之扩展运算符 三个点(...)...原创 2021-02-04 09:32:46 · 151 阅读 · 0 评论 -
js截取指定字符前后的字符串、将GET请求URL上的请求参数提取出来
1、根据指定字符分割字符串,获取指定字符前后的字符串function splitStr(string, str) { //根据指定字符分割字符串,获取指定字符前后的字符串 let strObj = {}; let str_before = string.split(str)[0]; let str_after = string.split(str)[1]; strObj.str_before = str_before; strObj.str_after = str_after; retur原创 2021-01-12 14:11:52 · 871 阅读 · 0 评论 -
JavaScript的数据类型及深拷贝的实现方式
目录一、JavaScript 有两种 数据类型:二、JavaScript 有两种 数据拷贝方式:三、深拷贝的实现方法本文参考:【JS】深拷贝与浅拷贝的区别,实现深拷贝的几种方法、菜鸟教程之JavaScript数据类型一、JavaScript 有两种 数据类型:1、值类型(基本数据类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。2、引用数据类型:对象(Objec.原创 2021-01-08 15:28:13 · 238 阅读 · 1 评论 -
Javascript中sync、async和await、Promise的理解与使用
一、理解JavaScript、sync和asyncJavaScript是一门单线程的语言,因此,JavaScript在同一个时间只能做一件事,单线程意味着,如果在同个时间有多个任务的话,这些任务就需要进行排队,前一个任务执行完,才会执行下一个任务。因为JavaScript的单线程,因此同个时间只能处理同个任务,所有任务都需要排队,前一个任务执行完,才能继续执行下一个任务。但是,如果前一个任务的执行时间很长,比如文件的读取操作或ajax操作,后一个任务就不得不等着,拿ajax来说,当用户向后台获取大量原创 2021-01-06 14:18:42 · 9433 阅读 · 0 评论