![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
予你@。
真正属于我的命中注定,再找五百年又怕什么。
展开
-
MVVM与MVC
1、什么是 MVVM?Model–View–ViewModel (MVVM) 是一个软件架构设计模式,MVVM 的出现促进了前端开发与后端业务逻辑的分离,极大地提高了前端开发效率,MVVM 的核心是 ViewModel 层,它就像是一个中转站(value converter),负责转换 Model 中的数据对象来让数据变得更容易管理和使用,该层向上与视图层进行双向数据绑定,向下与 Model 层通过接口请求进行数据交互,起呈上启下作用。...原创 2021-08-19 11:11:34 · 405 阅读 · 0 评论 -
使用Axios发送Ajax请求
客户端:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Axios 发送 Ajax 请求</title> <script crossorigin="原创 2021-08-18 10:47:28 · 332 阅读 · 0 评论 -
如何解决跨域问题
什么是跨域问题:例如我们在百度的网站下,则我们的域可以表示为[baidu.com],如果我们想要请求淘宝域下[taobao.com]的资源,那我们就是从一个域跨到另一个域,就会出现跨域的资源共享的问题CORS开发中常常会遇到这样的问题:接口在一个端口 ,前端的服务则在另一个端口上,从前端服务获取接口的时候就会出现跨域问题如何解决1官方解决方案 :设置请求头 response.setHeader("Access-Control-Allow-Origin","*")2jsonp ..原创 2021-08-18 10:42:35 · 789 阅读 · 0 评论 -
配置npm 为淘宝镜像
npm config set registry https://registry.npm.taobao.orgnpm config get registry 验证是否配置成功原创 2022-02-25 16:22:05 · 312 阅读 · 0 评论 -
Syntax Error: TypeError: this.getOptions is not a function
出现问题场景:vue运行项目过程中报错在这里插入图片描述检查代码中并无写错的地方其实涉及到这个问题,就是版本原因了,我安装的 scss-loader 版本太高,卸载安装低版本即可在这里插入图片描述npm uninstall --save sass-loader // 卸载npm i -D sass-loader@8.x // 安装npm uninstall --save node-sass // 卸载npm i node-sass@4.14.1 // 安装// 如果node-sass安装转载 2022-02-24 11:42:57 · 86 阅读 · 0 评论 -
document.write,innerHTML和innerText的基本区别
document.write 将内容写入页面,清空替换掉原来的内容,会导致重绘document.innerHTML 将内容写入某个Dom节点,不会重绘 可以识别html标签document.innderText 不识别html标签.innderText和innerHTML 这两个属性是可读写的 例如$("div").innerText 但是只是获取内容,他会去除空格和换行innerHTML 获取的是结构 同时保留了空格和换行...原创 2021-08-19 10:43:52 · 513 阅读 · 0 评论 -
axios的基本使用
1 使用json-server创建一个假的rest api服务1 安装 npm install -g json-server 2 创建一个json文件3 启动服务 json-server --watch db.json2 axios 的特点1 Make XMLHttpRequests from the browser 在浏览器端发送Ajax请求2 Make http requests from node.js 在node.js中发送http请求3 Supports the Promise原创 2022-05-05 17:17:17 · 704 阅读 · 2 评论 -
const定义的变量,是否可以修改
const定义的变量,是否可以修改原创 2022-06-24 16:50:17 · 1764 阅读 · 0 评论 -
JS中 new Date().Format("yyyy-MM-dd") 报错
1、原因:ES6中已经去掉了Format 的方法JS日期格式化转换方法1. 将日期转换为指定的格式:比如转换成 年月日时分秒 这种格式:yyyy-MM-dd hh:mm:ss 或者 yyyy-MM-dd。当然是网上的方法,只是总结下。可以为Date原型添加如下的方法:Date.prototype.format = function(fmt) { var o = { "M+" : this.getMonth()+1, //..原创 2021-11-19 16:58:29 · 8193 阅读 · 1 评论 -
ES6 模板字符串基本用法
1 声明 es6中引入新的声明字符串的方式[``]let str=`es6模板字符串`;console.log(str,typeof str);2 内容中可以直接出现换行符例如let str=`es6模板字符串`;但是在常用的单引号''双引号中"" 不可以换行3 变量拼接let love="沈腾";let out=love+"xxx是我认为最好的喜剧演员";let out1=`{love}xxx是我认为最好的喜剧演员`;console.log(out.原创 2021-08-18 13:38:01 · 245 阅读 · 0 评论 -
什么是跨域?怎么解决跨域问题
什么是跨域?怎么解决跨域问题转载 2022-07-15 16:09:04 · 106 阅读 · 0 评论 -
使用Blob,下载文件流。
下载后端接口返回的文件流原创 2023-02-02 11:12:02 · 451 阅读 · 2 评论 -
js中的防抖和节流之间的区别以及实现方式
概念:函数防抖:触发高频事件N秒内函数只会执行一次,如果N秒内函数再次被执行,则重新计算时间函数节流:高频事件触发,N秒内只会执行一次,所以节流会稀释函数的执行频率函数节流与函数防抖都是为了限制函数的执行频次,以优化函数触发频率过高导致的响应速度跟不上触发频率,出现延迟,假死或卡顿的现象1函数防抖实现方式:每次触发一个事件时候设置一个延迟调用方法,并且取消之前的延迟调用方法缺点:如果事件在规定的时间间隔内被不断的触发,则调用方法会被不断的延迟//防抖debounce代码:原创 2021-08-18 10:26:44 · 125 阅读 · 0 评论 -
this与es6中的箭头函数
this总是指向函数的直接调用者(而非间接调用者) 如果有new关键字,this指向new出来的那个对象 在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window在es6的箭头函数中this指向的是所在对象的父级 原因就是箭头函数没有作用于 没有function定义,就没有形成自己的作用域 而且箭头函数 不能作为构造函数 也就是不能使用new关键字创建实例对象 箭头函数本质上是一种简化的语法 ...原创 2021-08-18 13:21:12 · 60 阅读 · 1 评论 -
在JavaScript中,双问号和 双竖杠的区别
js中,双问号??和双竖杠||的区别:它们的共同特点是语法一样,前面是值,后面也是值,中间是符号;都是根据前面的值来决定到底取前面还是取后面。双竖杠||,只要前面的值转为布尔值为false时,就取后面,否则取前面,如undefined、null、false、空字符串和数值0而双问号则为:前面的值为null、undefined,则取后面的值,否则都取前面的值。由此可以发现,双问号??更加适合在不知道变量是否定义时,或者是否赋值时的场景来使用。————————————————版权声明:本文为转载 2021-11-26 17:19:51 · 520 阅读 · 0 评论 -
使用node Js 操作数据库模块
1 新建db模块 并导出执行 npm install mysql 命令 安装mysql模块const mysql = require('mysql')// 数据库连接对象const db = mysql.createPool({ host: '127.0.0.1', user: 'root', password: '000000', database: 'my_db', //库名称})module.exports = db在 登录执行函数中// 导入数据库原创 2022-03-11 14:13:39 · 1181 阅读 · 0 评论 -
什么是闭包?闭包的作用,用法及优缺点
阅读目录什么是闭包? 1、变量作用域 2、如何从外部读取函数内部的局部变量? 3、闭包的概念 4、闭包的用途 5、使用闭包的注意点 正文回到顶部什么是闭包?1、变量作用域要理解闭包,首先要理解javascript的特殊的变量作用域。变量的作用域无非就两种:全局变量和局部变量。javascript语言的特别之处就在于:函数内部可以直接读取全局变量,但是在函数外部无法读取函数内部的局部变量。注意点:在函数内部声明变量的时候,一定要使用var命令。如果..转载 2021-07-14 17:38:57 · 143 阅读 · 1 评论 -
使用JavaScript解决菲波那切数列问题
递归的概念:若一个算法直接地或间接地调用自己本身,则称这个算法是递归算法(《数据结构—使用C语言实现;朱战立;西安交大出版社》); 递归的两个条件:自己调用自己和有结束条件(否则是死递归) 斐波那契数列 1, 1, 2,3,5,8,13,21….. 使用公式f( n ) = f(n-1)+f(n-2),结束条件f(2) =1, f(1) = 1function fib(n){ if( n==1 || n == 2){ retur...转载 2021-09-01 13:33:07 · 115 阅读 · 0 评论 -
同步和异步的区别
同步:浏览器访问服务器请求,用户看得到页面刷新,重新发请求,等请求完,页面刷新,新内容出现,用户看到新内容,进行下一步操作 异步:浏览器访问服务器请求,用户正常操作,浏览器后端进行请求。等请求完,页面不刷新,新内容也会出现,用户看到新内容...原创 2021-08-18 11:09:50 · 341 阅读 · 0 评论 -
JavaScript常见面试题
1谈谈This对象的理解this总是指向函数的直接调用者(而非间接调用者) 如果有new关键字,this指向new出来的那个对象 在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window2 new操作符具体干了什么呢?创建一个空对象,并且this变量引用该对象,同时还继承了该函数的原型 属性和方法被加入到this引用的对象中 新创建的对象由this所引用,并且最后隐式的返回this3 XML和JSON的区别?...原创 2021-08-18 11:16:55 · 103 阅读 · 0 评论 -
原生HTML,CSS,JS实现tab栏切换效果
原生HTML,CSS,JS实现tab栏切换效果原创 2022-09-12 17:00:46 · 1607 阅读 · 0 评论 -
DOM元素简介
在网页上,组成页面(或文档)的对象被组织在一个树形结构中。页面的顶级包含在html标签中,在其中会找到head和body标签,而其它标签包含在这两个标签中,javascript将文档树中的每一项都当做对象,可以使用javascript操纵这些对象。用来表示文档中对象的标准模型就称为DOM(Document Object Model)。...原创 2021-06-29 11:28:23 · 1093 阅读 · 0 评论 -
cookie,sessionStorage 和 localStorage 的区别 cookie弊端
区别cookie是网站为了标示用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)cookie数据始终在同源的http请求中携带(即使不需要),记会在浏览器和服务器间来回传递sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存存储大小:cookie数据大小不能超过4ksessionStorage和localStorage虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大有期时间:localSto原创 2021-08-18 10:53:54 · 233 阅读 · 0 评论 -
前端学习路线
1 零基础前端开发视频教程 Html5+Css3+移动Web教程 --黑马程序员:前端Html5+Css3+移动Web教程,前端Web入门教程,零基础前端开发视频教程_哔哩哔哩_bilibili2零基础JavaScript入门 --黑马程序员:黑马程序员JavaScript全套教程,Web前端必学的JS入门教程,零基础JavaScript入门_哔哩哔哩_bilibili3jQuery网页开发案例精讲 --黑马程序员:黑马程序员前端基础必备教程|jQuery网页开发案例精讲_哔哩哔哩...原创 2022-03-22 15:10:27 · 776 阅读 · 0 评论 -
调试dom元素样式的方式
调试dom元素样式的方式原创 2022-06-20 16:32:03 · 114 阅读 · 0 评论 -
JavaScript 判断数据是数组还是对象
JavaScript 判断数据是数组还是对象原创 2022-06-24 17:42:34 · 390 阅读 · 0 评论 -
echarts图表纵轴刻度出现小数点,问题
echarts图表纵轴刻度问题原创 2023-02-14 12:05:03 · 1634 阅读 · 0 评论 -
使用Vue手写一个简易的键盘
简易键盘原创 2023-02-08 17:49:41 · 523 阅读 · 0 评论 -
接口调用顺序-Es6中promise在项目中的使用
前端ES6,promise在项目中的实际应用。原创 2023-01-30 15:42:13 · 906 阅读 · 7 评论 -
使用FormData方法实现本地文件上传到服务端
使用FormData方法实现本地文件上传到服务端原创 2022-10-23 11:43:50 · 733 阅读 · 2 评论 -
ECharts 图表的通用配置项
1 title :标题配置 title: { text: '语文成绩', // 标题文字 textStyle: { // 标题文字样式设置 color: 'skyblue' }, borderWidth: 5, // 标题边框宽度 borderColor: 'blue', // 标题边框颜色 borderRadius: 5, // 标题边框圆角 left: 50,原创 2022-04-26 10:12:45 · 551 阅读 · 0 评论 -
Es6 去重方法
去重:包括数组,字符串去重 // es6 set方法 let arr = [1, 4, 5, 1, 4, 3, 1, 7] let arr1 = [2, 7, 9] let arr2 = [8, 0]; let str = 'abcdefgacd'; //去重 console.log([...new Set(arr)]);//数组去重简写 //[1, 2, 3, 4, 5, 7, 8, 9, 0] console.log(Arr原创 2022-04-21 11:16:29 · 1382 阅读 · 0 评论 -
JavaScript数组常用的实例方法
1 concat() 连接两个或更多的数组,并返回结果let arr = [1,2,3]let arr2 = [4,5,6]let arr3 = [7,8,9]arr.concat(arr2,arr3)console.log(arr) // [1,2,3,4,5,6,7,8,9]2 join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔 参数可选,指定要使用的分隔符let arr = new Array(3)arr[0] =......原创 2022-04-21 11:05:51 · 314 阅读 · 0 评论 -
JavaScript数组的静态方法
1 数组的静态方法Es5 :Array.isArrayEs6 : Array.form Array.of // Es5 判断一个基本类型是否是数组类型 不能用来检测引用类型 let arr = []; let state = Array.isArray(arr) // state: trueArray.form // Es6 Array.form(arrayLike,[callback]) // 作用是把一个伪数组转换为...原创 2022-04-21 10:19:55 · 1333 阅读 · 0 评论 -
Es11 可选链操作符
什么是可选链操作符语法格式: ?.适用场景 读取对象深度的属性 我们可以简化判断,不再需要层层判断含义就是: 如果a 不是undefined<script> // ?. function main(config){ // 正常写法 层层判断 const ballName = config&&config.person&&config.person.hobby&&config.per原创 2022-04-11 16:48:50 · 363 阅读 · 0 评论 -
Es11 globalThis
globalThis:始终指向全局this 也就是window 不管在什么环境中都可使用:作用: 当我们需要使用全局this时候 可以忽略环境的影响普通JavaScript中:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scal原创 2022-04-11 16:12:21 · 577 阅读 · 0 评论 -
浏览器执行JavaScript过程
浏览器分为两个部分:渲染引擎和JS引擎1 渲染引擎:用来解析HTML和CSS,俗称内核 例如Chrome浏览器的blink2JS引擎: 也称js解析器,用来读取网页中的JavaScript代码,处理后运行 例如 Chrome浏览器的V8JavaScript是高级编程语言,计算机只认识编程语言,浏览器本身并不会执行JS代码,而是通过内置JavaScript引擎解析器来执行js代码。js引擎 执行代码时逐行解释(一句一句解释)每一句源码转换为机器语言,然后由计算机去执行,所以JavaScript语言原创 2022-03-22 15:48:26 · 1520 阅读 · 0 评论 -
Windows环境安装node.js
1、下载node安装包Node.js安装包下载地址:https://nodejs.org/en/download/根据不同平台系统选择需要的Node.js安装包2 下载好后双击安装 进入导向之后 一直点next3 测试安装是否成功运行命令提示符窗口,分别输入node -v 和 npm -v 分别查看node和npm的版本号,npm随安装程序自动安装。如下图所示:4配置npm在安装全局模块时的路径和缓存cache的路径 (可以跳过此步骤)因为在执行例如npm in.原创 2022-03-16 11:53:12 · 1228 阅读 · 0 评论 -
async函数与await表达式
异步编程的终极解决方案:因为它摒弃了 回调函数的用法什么是acyncacync 标志一个函数 形成一个async函数 与普通函数不同 async函数的返回值是一个promise对象promise对象的结果由async函数执行的返回值决定什么是awaitawait右侧的表达式一般是一个promise对象,但是也可以是其它的值 ,如果是promise对象,await返回的是promise对象成功的值,如果promise返回的是失败的状态,则需要使用 try catch 捕获异常。a原创 2022-03-16 10:48:46 · 442 阅读 · 0 评论 -
Es6 Promise基础
什么是promise :promise 是es6引入的新的异步解决方案,单纯从语法来说它就是一个构造函数,可以封装异步的任务,并且可以获取其成功失败的结果值,对结果进行处理,最大的好处:解决回调地狱的问题,并且在错误处理方面更加灵活,应用十分广泛。什么是异步操作\异步编程:例如:node.js 中的 fs文件读取操作ajax 网络请求定时器旧的解决方案:单纯的回调函数例如:fs 中的文件操作:require('fs').readFile('./index.html'原创 2022-03-15 15:37:09 · 931 阅读 · 0 评论