javascript
js
落花有意,树无情
这个作者很懒,什么都没留下…
展开
-
2021-03-10
作业webpack 构建流程有哪些环节?初始化参数:webpack会根据命令行输入,webpack.config.js. 以及必要的默认配置。而成最后配置开始编译:根据配置的最终结果会得到一个compiler对象,注册所有的插件。开始监听webpack。确定入口:根据webpack.config.js 文件的entry 入口,开始解析文件构建AST语法树,找出依赖,递。下去编译模块:递归过程中,根据文件类型和loader配置,调用相应的loader对不同的文件做不同的转换处理,在找出该模块,然后原创 2021-03-10 22:08:41 · 167 阅读 · 0 评论 -
作业三
谈谈你对工程化的初步认识,结合你之前遇到过的问题说出三个以上工程化能够解决问题或者带来的价值。前端工程化就是通过一定的标准和规范来提高开发效率的一种手段,一切一降低成本 质量保证,提高效率为目的 的都属于前段的工程化解决重复的工作:上线前部署代码压缩文件打包文件等等解决代码风格各个程序员不统一的 问题解决部分功能需要等待后端的接口才能进行开发解决无法使用模块化和组件化的代码解决真正意义上实现了前后端的完全分离2、你认为脚手架除了为我们创建项目结构,还有什么更深的意义?脚手架可以帮我们快速原创 2021-01-13 03:50:27 · 219 阅读 · 0 评论 -
前端工程化实战
前端工程化实战工程化概述1.工程化的定义和主要解决的问题传统语言或语法的弊端无法使用模块化。组件化重复的机械工作代码风格的统一,质量保证依赖后端服务接口的支持整体依赖后端项目2.一个项目过程工程化的表现一切重复的工作都应该被自动化[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JlvxiaGI-1610480594072)(C:\Users\Admin\AppData\Roaming\Typora\typora-user-images\16087183原创 2021-01-13 03:44:12 · 340 阅读 · 1 评论 -
javaScript性能优化
javaScript性能优化1.内存管理function fn(){ arrList=[] arrList[10000000]="lg is a coder"}fn()内存:由可读写单元组成,表示一片可操作的空间管理:人为的去操作一片空间的申请,使用和释放内存管理:开发者主动申请空间,使用空间和释放空间步骤:申请使用和释放js中的内存管理申请内存空间let obj={}使用内存空间obj.name='lg'释放内存空间obj=null2.垃圾回原创 2020-12-22 22:46:03 · 257 阅读 · 0 评论 -
作业二
作业二一,请说出下列最终的执行结果,并解释为什么var a = [];for (var i = 0; i < 10; i++) { a[i] = function() { console.log(i) }}a[6]()//10答:数组中有两个全局变量a,i,每个元素中保存着一个匿名函数在调用a[6]时候i已经变为十了二,请说出下列最终的执行结果,并解释为什么。var tmp=123;if(true){ console.log(tmp) let原创 2020-12-22 22:39:41 · 114 阅读 · 1 评论 -
ECMAScript新特性----ES6
ECMAScript新特性1. ECMA概述ECMASCript提供了最基本的语法2015年每年一个版本的迭代javaScript@web ECMAScript操作的是DOM和BOMjavaScript@NodeJS ECMAScript操作的是NodeJS的API2.ES2015概述解决原有语法上的一些问题或者不足对原有语法进行增强全新的对象,全新的方法,全新的功能全新的数据类型和解构3.let与块级作用域作用域某个作用成员能够生效的范围ES6以前只有两种作用域原创 2020-12-11 18:54:41 · 89 阅读 · 0 评论 -
手写Promise代码 逻辑注释
Promise代码const PENDING = 'pending'const FULFILLED = 'fulfilled'const REJECTED = 'rejected' // 因为状态经常使用所以设置为常量function resolvePromise(Promise2, x, resolve, reject) { if (Promise2 === x) { //防止Promise重复调用 reject(new TypeError('Chaining原创 2020-11-30 23:45:21 · 149 阅读 · 0 评论 -
mxGraph(三)——io流mxObjectCodec
这个类实现了对象到xml直接的转换。通过递归调用这个类的decode和encode方法来进行编码和解码这个类还针对数组和布尔值进行判断。原创 2020-04-22 17:33:57 · 470 阅读 · 0 评论 -
mxGraph(二)-model
mxCellCells are the elements of the graph model. They represent the state of the groups, vertices and edges in a graph.单元格是图模型的元素。它们表示图中的组,顶点和边的状态。一下是创建了一个以xml节点为值得单元格var doc = mxUtils.crea...原创 2020-04-15 15:32:13 · 500 阅读 · 0 评论 -
commonJS的require/exports和Es6的exports/import的写法
1.commonJS的require/exports第一种:exports.say = function(){ }exports.hello = function(){}或者这种写法function say() {}function hello() {}exports.say = sayexports.hello = hello// 调用var user = require...原创 2019-11-20 18:37:56 · 183 阅读 · 0 评论 -
nodejs中 res.end()和express中的res.send()的区别
res.send和res.end1.res.send–>发送HTTP响应body中可以有三个参数 Buffer对象 string对象 Array此方法对简单的非流式响应执行许多有用的任务:例如,它自动分配Content-LengthHTTP响应标头字段(除非事先定义),并提供自动的HEAD和HTTP缓存新鲜度支持。1.当参数为Buffer对象时,该方法将Content-Type响应头...原创 2019-09-28 23:04:48 · 11648 阅读 · 1 评论 -
葡萄城 面试前测试的题--杨辉三角
var yangHui=function(n,m){ if(n<=0||m>10000||m>=n+1)return false;//判断条件是否越界 let result=1; let z=1; if (n==m||m==1) { return result;//杨辉三角满足C(n-1,m-1)=(m-1)*(m-2)...n个数想成/列数减一的阶乘 } for...原创 2019-09-27 16:59:25 · 1080 阅读 · 0 评论 -
将目录的下的文件和其路径转换为json对象或者字符串-js
const path=require("path");const fs=require('fs');fs.stat('img',(err)=>{ if (err)return; var result='{' fs.readdir("img",(err,data)=>{//data返回的是对象 for(var i=0;i<Object.keys(data).len...原创 2019-09-27 02:46:39 · 1504 阅读 · 0 评论 -
JavaScript实现归并排序-递归法与非递归法
1.归并排序将已有的序列的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列有序 喏将两个有序表合成一个有序表则称为二路归并//定义组的交换let merge=(left,right)=>{ var result=[]; while(left.length>0&&right.length>0){ if(left[0]<=righ...原创 2019-09-23 16:35:21 · 460 阅读 · 0 评论 -
js练习题(一)
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。var addTwoNumbers = function(l1, l2) { let p1=l1; let p2=l2;...原创 2019-09-17 00:13:25 · 185 阅读 · 0 评论 -
原生js实现推箱子代码 和 思路
一 思路1.获取img图片2.创建map-10x10(必须将两个个图创好)(方便构建对象来使用)创建map的时候要返回人物的对象插入元素的时候将地图利用成二维数组并将人物的位置封装成对象copy节点 直接创造节点 或者声明创造节点的函数()//第一种占内存 第二种占运存*添加任务旋转的时候回在map函数中加对象3.获取键盘上的值将键盘上的值封装起来转换成一个方向 ,再通过方向判...原创 2019-09-02 20:08:49 · 2597 阅读 · 0 评论 -
js遍历的几种方式
js遍历的几种方式转载 2019-08-20 17:31:28 · 87 阅读 · 0 评论 -
js判断网络链接的四种方法
1.navigator.onLine <script type="text/javascript"> var p1 = document.getElementById('p1');// window.navigator.onLine //用来检测网络是否可用 alert(window.nav...原创 2019-08-05 23:19:21 · 2113 阅读 · 0 评论 -
js实现判断年份为闰年的代码
javascript实现判断年份为闰年的代码要判断某一年为闰年的条件是:年份必须是四的倍数且不是整百的倍数整百年是400的倍数的年份称为闰年;一下是js代码的实现<html> <head> <meta charset="utf-8"> <title>docunment</title> <script ty...原创 2019-04-21 15:59:34 · 5244 阅读 · 0 评论 -
NaN在js中的意义
NaN在js中的意义NaN(Not a number)在一般的计算机专业都表示为 非数值类型,或者不可表示的值。在javascript中是一种全局对象的属性,表示这个值不是数字,在js中可以将number对象的值设置为NaN 一般就是表示这个值不是数字或者parsefloat函数不能解析字符串的时候回返回这个值javaScript 以 NaN 的形式输出 Number.NaN。请注意,...原创 2019-04-21 23:27:46 · 6009 阅读 · 0 评论 -
javascript实现快速排序
快速排序:快速排序是对冒泡排序的一种改进,他是将数组的所有的值与一个key值比较(此值一般为第一个或者最后一个)然后将大于key值的数放在key值又边,小于key值的数放在key值左边。然后分别在对key值左右的无序数组进行上述方法进行递归排序最后当数组排序完成结束排序。下面是我编写的js代码: function quickSort(arr,left,right) { ...原创 2019-05-01 21:41:55 · 346 阅读 · 0 评论 -
javascript学习笔记(一)
js笔记一 js是什么!JavaScript 是一种基于对象和事件驱动并具有相对安全性 的客户端脚本语言。同时也是一种广泛用于客户端 Web 开发的 脚本语言,常用来给 HTML 网页添加动态功能,比如响应用户的 各种操作。常见的JavaScript编辑工具有 Hbulider Dreamweaver Visual Studio, Sublime;万事万物都是对象 对象中的三大要素/三大...原创 2019-04-23 16:27:05 · 146 阅读 · 0 评论 -
javascript学习笔记(二)——数组和字符串及其函数
一 .数组(一)声明数组使用var 定义 数组的实质是Array对象 js中的数组称之为弱数组(数组中元素的数据类型可以不一样) js中的数组可以不需要定义长度声明数组的三种方法:// 方法一var mydate=new Array();mydate[0]="瞿恒"mydate[1]="quheng"mydate[2]="Tom-x"// 方法二var myda...原创 2019-04-28 17:02:50 · 134 阅读 · 0 评论 -
javascript实现选择排序
选择排序:选择排序的原理是将一个无序数组中选择最小或者最大的元素放在起始位置,然后再在剩余的元素中选择最大或者最小的元素放在已经排序的数组后.以此类推最后得到结果就是排序完成的数组。实例如下: <script> function selectionSort(arr) { var len = arr.length; var minIndex, tem...原创 2019-05-05 06:26:47 · 207 阅读 · 0 评论 -
javascript实现希尔排序
希尔排序希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个...原创 2019-05-05 06:34:03 · 327 阅读 · 0 评论 -
javascript实现插入排序——直接插入排序
插入排序:插入排序(Insertion sort)是一种简单直观且稳定的排序算法。如果有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排...原创 2019-04-30 00:48:11 · 330 阅读 · 0 评论 -
HTML DOM
一.什么是htmlDOM!DOM 是 W3C(万维网联盟)的标准。DOM 定义了访问 HTML 和 XML 文档的标准:“W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。” 核心 DOM - 针对任何结构化文档的标准模型 XML DOM - 针对 XML 文档的标准模型 HTML DOM - 针对 H...原创 2019-05-13 16:36:11 · 113 阅读 · 0 评论 -
js中this对象 及其作用
this对象this对象在js中是一个特殊的存在 它总是指向它所属的对象,它拥有的不同的值取决于它的不同的位置,一般情况下有一下几种:在方法中this所指的是其所有者的对象,一般用来建造构造函数。 在单独使用的情况下,this一般指的全局对象,一般都是浏览器对象window。 在函数中 this指...原创 2019-05-29 00:54:55 · 1099 阅读 · 0 评论 -
Javascript实现购物车案例--Javascript学习
JavaScript实现购物车来进行设计一个购物车的功能html代码:<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>购物车</title> <link rel="stylesheet" type="text/css" hre...原创 2019-06-10 00:47:18 · 4511 阅读 · 0 评论 -
javaScript高级闭包
闭包可以理解成一块封闭的作用域,也就是一个函数一个闭包 闭包中可以嵌套闭包闭包一般有两个作用:一。可以在函数外部访问局部变量二。可以使数据进行缓存但是闭包也有其缺点。闭包的过度使用会导致内存占用过高,是因为闭包的作用域一般要包含其内部的作用域 所以相比之下 闭包的使用对于会占更多的内存闭包的使用还会导致引用的变量发生变化举个例子function out(){...原创 2019-07-18 23:29:42 · 75 阅读 · 0 评论 -
js对象和原型的理解与学习(一)
对象(1)对象是对单个事物的抽象(2)对象是一个容器 封装了属性(property)和方法(method)1、面向对象和面向过程的概述 面向对象不是新的东西,它只是过程式代码的一种高度封装,目的在于提高代码的开发效率和可维护性。 面向对象与面向过程: - 面向过程就是亲力亲为,事无巨细,面面俱到,步步紧跟,...原创 2019-07-16 20:37:21 · 70 阅读 · 0 评论 -
js中的方法不能调用全局变量的问题
var maxMap=document.getElementsByClassName("map")[0];//获取地图的divfunction creatMap(map1){ console.log(maxMap); maxMap.innerHTML="";//清空地图}这样的代码会在控制台上输出为空 而且给整串代码加window.onload=functio...原创 2019-07-20 17:17:50 · 2981 阅读 · 1 评论 -
js继承和原型以及原型链
继承继承 是指一种关系,是类与类之间的关系, 但是js中没有类这个概念,js是通过构造函数模拟类. 然后通过原型 来实现继承继承也是为了数据共享原型作用之一: 数据共享,节省内存空间原型作用之二: 为了实现继承继承实例讲解:列子:人,都有姓名,性别,年龄,吃饭,睡觉,玩.....学生,都有姓名,年龄,性别,吃饭,睡觉,玩,学习,成绩...... function...原创 2019-07-17 22:49:09 · 80 阅读 · 0 评论 -
js实现水仙花数&&javascript实现水仙花数
水仙花数:水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。下面代码就是利用javascrip...原创 2019-04-21 15:50:52 · 13519 阅读 · 0 评论