js
文章平均质量分 66
hello worId
这个作者很懒,什么都没留下…
展开
-
js异步编程、Promise的应用以及在循环中、递归的时候使用Promise。
Javascript 是一个单线程的语言,在前端编程中,我们在处理一些简短、快速的操作时,往往在主线程中就可以完成。主线程作为一个线程,不能够同时接受多方面的请求。坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段 Javascript 代码长时间运行(比如死循环),导致整个页面卡在这个地方,其他任务无法执行。为了解决这个问题,Javascript 语言将任务的执行模式分成两种:同步(Synchronous)和异步(Asynchro原创 2022-07-12 16:03:11 · 1168 阅读 · 0 评论 -
前端打包体积优化
前端打包体积优化如何将项目部署到云服务器上?前端的项目通常是将项目打包后的静态资源文件放到服务端代码的根目录中,详细请参考前端项目部署至云服务器。但是个人用户购买的云服务器的带宽通常只有 1M~2M。若是生成的资源文件体积过大会导致加载缓慢。没有使用 gzip 时文件大小为 2M 左右,以 1M 的带宽 128kb/s 加载时长要近 20s。详细优化可以看http://blog.liufashi.top......原创 2022-04-08 21:33:34 · 1922 阅读 · 0 评论 -
原型和原型链
JavaScript深入之从原型到原型链JavaScript深入系列的第一篇,从原型与原型链开始讲起,如果你想知道构造函数的实例的原型,原型的原型,原型的原型的原型是什么,就来看看这篇文章吧。构造函数创建对象我们先使用构造函数创建一个对象:function Person() {}var person = new Person();person.name = 'Kevin';console.log(person.name) // Kevin在这个例子中,Person 就是一个构造函数原创 2020-12-21 22:27:58 · 121 阅读 · 0 评论 -
执行上下文栈
执行上下文栈js代码执行顺序是什么,大部分人都知道同步执行var foo = function(){ console.log('foo1'); } foo(); // foo1 var foo = function(){ console.log('foo2'); } foo() // foo2然后看以下下面代码 function foo(){原创 2020-12-15 18:02:37 · 250 阅读 · 1 评论 -
模拟js中常用的的API
/** * 两极反转 * @param array * @returns {[]} */function arr_reverse(array) { var result = []; for (var i = array.length - 1; i >= 0; i--) { result[result.length] = array[i]; } return result;}/** * 删除最后一个 * @param array *.原创 2020-12-15 16:53:51 · 116 阅读 · 0 评论 -
js的数组去重汇总
数组去重是js中很常见的问题这里总结了常用的一些去重算法(7种)使用数组内置api splice() 原数组改变 for (var i = 0; i < arr.length; i++) { for (var j = i + 1; j < arr.length; j++) { if (arr[i] === arr[j]) { arr.splice(j, 1);原创 2020-12-09 20:49:14 · 92 阅读 · 0 评论 -
var的变量提升函数预解析
预解析:在当前作用域下,js运行之前,会把带有var和function关键字声明的变量先声明,并在内存中安排好。然后从上至下解析js语句。而且function的声明优先于var声明。不多说,,直接上代码正规写法:12345var num=10;fun();function fun(){console.log(num);//undefinedvar num=20; }预解析里:先将变量和函数提前,如下:12345678var num;function fun(){原创 2020-12-09 19:39:31 · 203 阅读 · 0 评论 -
js实现的排序
简单排序冒泡排序 - 冒泡排序是最简单排序算法,时间复杂度为n的平方,代码如下: function bubbleSort(array) { for (var i = 0; i < array.length; i++) { for (var j = array.length; j > 0; j--) { if (array[j] < array[j - 1]) {原创 2020-12-08 23:35:28 · 283 阅读 · 0 评论 -
正则表达式
正则表达式正则定义显式定义var reg = new RegExp(“正则表达式模式”);//[0-9]表示匹配数字var reg = new RegExp("[0-9]");隐式定义var reg = /正则表达式模式/;//\d:表示匹配数字var reg2 =/\d/;var reg3=/[0-9]/;方法test作用:是否匹配正则表达式模式。返回:true(匹配)/false(不匹配)match作用:可以在字符串内检索指定的值,或原创 2020-12-03 22:40:29 · 123 阅读 · 0 评论 -
总结JavaScript的数据类型转换
js中的数据类型可以分为两大类; 基本数据类型:string number undefined null Boolean 引用数据类型:对象,函数,以及数组他们之间在特定的情况下会发生类型转换显示转换1. 转化为数值型:Number()强制转换...原创 2020-11-27 21:55:09 · 139 阅读 · 0 评论