- 博客(43)
- 收藏
- 关注
原创 浅析Vue虚拟Dom与diff算法
虚拟DOM 1. 什么是虚拟DOM? 虚拟DOM(Virtual Dom),也就是我们常说的虚拟节点,是用JS对象来模拟真实DOM中的节点,该对象包含了真实DOM的结构及其属性,用于对比虚拟DOM和真实DOM的差异,从而进行局部渲染来达到优化性能的目的。 举个栗子,真实的元素节点: <div id="wrap"> <p class="title">Hello world!</p> </div> VNode: { tag:'div', attrs
2021-09-10 14:43:45
259
原创 CommonJS
1. 维基百科上Common.js的定义是: CommonJS 是一个项目,其目标是为 JavaScript 在网页浏览器之外创建模块约定。创建这个项目的主要原因是当时缺乏普遍可接受形式的 JavaScript 脚本模块单元,模块在与运行JavaScript 脚本的常规网页浏览器所提供的不同的环境下可以重复使用。 很长一段时间 JavaScript 语言是没有模块化的概念的,直到 Node.js 的诞生,把 JavaScript 语言带到服务端后,面对文件系统、网络、操作系统等等复杂的业务场景,模块化就变得
2021-09-10 14:32:26
663
原创 前端开发常用的代码合集
js打印日志 console.log("原始数据:",data); js生成uuid // 生成uuid function uuid(){ var s = []; var hexDigits = "0123456789abcdef"; for(var i = 0;i<36;i++){ s[i] = hexDigits.substr(Math.floor(Math.random()...
2019-12-13 16:21:27
2816
原创 JS算法题目【每日更新】
1.用JavaScript实现简单的用户登陆验证 <script> function submitHandler(){ if(document.getElementById("username").value==""){ alert("请输入用户名"); return false; } else if(document.getElementById("passwo...
2019-11-12 19:34:53
272
原创 ES6中的Promise对象
1.什么是Promise 定义: Promise 是异步编程的一种解决方案,其实是一个构造函数,自己身上有all、reject、resolve这几个方法,原型上有then、catch等方法。 resolved 兑现 rejected 失败 let promise = new Promise(function(resolve,reject){ //异步操作 当异步操作成功的时候执行resol...
2019-11-12 11:00:23
168
1
原创 ES6和ES5的区别
1. ES5和ES6的区别? ECMAScript 5 (ES5):ECMAScript 的第五版,于2009年标准化,该标准已在所有现代浏览器中完全支持。 ECMAscript 6 (ES6):ECMAscript 第 6 版,2015 年标准化。这个标准已经在大多数现代浏览器中部分实现。 两者之间的区别: 箭头函数和字符串插值 const foo = (name)=>{ return ...
2019-11-12 10:41:04
277
原创 字符串的反转
今天看到了一个很有意思的算法题,看似简单,却有很多种解决办法。 问题:对于一个字符串,请设计一个算法,只在字符串的单词间做逆序调整,也就是说,字符串由一些由空格分隔的部分组成,你需要将这些部分逆序。 给定一个原字符串A,请返回逆序后的字符串。例,输入"I am a boy!", 输出"!yob a ma I" 解析:这里就用JavaScript语言给大家解析 1.先把字符串分割,然后再倒序拼接成一...
2019-11-11 19:55:39
210
原创 jQuery和qs根据不同的方式来获取元素
1. 根据ID获取元素 qs:取到的是一个DOM对象 例:var div = document.getElementByID(“one”); jQuery:提取到了一个jQuery对象 例:var div = $("#one"); 括号里面是根据某个东西来找,相当于一个选择,如果我们要根据ID来找,在样式表里的ID是用#来表示的,所以在这里我们直接带入井号,整句的意思就是根据ID为one的来...
2019-10-31 18:57:56
1233
原创 被模块化所使用的import和require的区别
import和require的区别 node编程中最重要的思想就是模块化,import和require都是被模块化所使用。 遵循规范 require 是 AMD规范引入方式 import是es6的一个语法标准,如果要兼容浏览器的话必须转化成es5的语法 调用时间 require是运行时调用,所以require理论上可以运用在代码的任何地方 import是编译时调用,所以必须放在文件开头 本质 re...
2019-10-25 17:20:07
174
原创 export,import ,export default的区别
export与export default的区别 区别: export与export default均可用于导出常量、函数、文件、模块等 你可以在其它文件或模块中通过import+(常量 | 函数 | 文件 | 模块)名的方式,将其导入,以便能够对其进行使用 在一个文件或模块中,export、import可以有多个,export default仅有一个 通过export方式导出,在导入时要加{ ...
2019-10-25 17:13:49
279
原创 ES6的常用新特性
1.let && const var 【es5中的】 1) 可以重复声明 var a =3 ; var a = true; 2) 变量的声明会被提升 3) 没有局部作用域 for(var i=0;i<100;i++){ console.log(i); } let 【变量的声明】 1) 不可以重复声明 2) 变量声明不会被提升 3) 具有局部作用...
2019-10-14 20:28:33
211
原创 ES6的新特性之迭代器与循环
我们知道遍历数组的方式之一就是 使用for循环、while循环或do…while循环来遍历,如: var arr = [1, 2, 3, 4, 5]; for (var i = 0; i < arr.length; i++) { console.log(arr[i]); //1,2,3,4,5 } ES5发布之后,可以使用 数组的forEach() 迭代方法来遍历数组: ...
2019-10-12 15:20:04
302
原创 JavaScript的核心及基本数据类型
JavaScript的组成 ECMAScript 核心 DOM:文档对象模型(document object model) js操作html的api(api:应用程序变量接口) 比如: var dom = document.getElementById(""); dom.onclick = function(){} dom.addEventListener(function(){}) B...
2019-08-19 18:18:32
216
原创 Linux的概念及基本目录结构与操作
Linux操作系统 ubuntu 红帽子 树莓派 双系统 ubuntu / windows 虚拟机 云服务器 1) 客户端 2) 终端工具:云服务器、xshell(阿里云)、putty(腾讯云)、mac/linux Linux的特点 性能强劲,运行稳定,一般作为服务器 整个操作系统可以被压缩成很小的一个文件,容易植入一些硬件设备中 开源免费(linux源代码) 对于初学者容易建立编程思维,是...
2019-08-19 16:50:45
143
原创 基于linux的nodejs的安装
一、 下载安装包 在官网下载linux版本的nodejs之后,复制链接 https://nodejs.org/dist/v10.16.2/node-v10.16.2-linux-x64.tar.xz $ wget https://nodejs.org/dist/v10.16.2/node-v10.16.2-linux-x64.tar.xz 二、 解压到/opt中 三、 配置环境变量 node...
2019-08-19 16:13:25
223
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人