首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端学习笔记

) 功能: 编码转字符 参数: ACSII码值 返回: 转码后字符 concat() 功能: 字符串 拼接 一般用 + 参数: str1 ,str2 indexOf() 功能: 字符串查找第一次出现的索引...截取和插入都不为零) join() 功能:使用拼接符将数组中元素拼接为字符串 参数: 拼接符,常用 空格 '' 、' '、+ 返回值: 拼接好的字符串 indexOf() +新增 功能: 数值查找第一次出现的索引.../test.txt', true) 发送请求 xhr .send() post步骤 创建Ajax对象 var xhr = new XMLHttpRequest (); 监听请求...热更新 gulp-plumber : 错误处理 (防打断) 其他 严格模式 严格模式下 浏览器对 JS 要求将会更加苛刻 ‘‘use strict’’; 写到哪 那个区域下所有代码遵从 严格模式。...(不要轻易全局模式下使用) 例如: // 非严格模式下 可行 , 未申明(var)变量 m赋值, 会默认当全局变量处理 function f(){ m=100 } f(); // 严格模式下

1.3K10

基于Vue、ElementUI的换肤解决方案

补充说明: js 修改 scss 变量是有方案的,但是我们项目中无法做到动态换颜色,为什么呢?...我们来看看他是怎么实现的(这里引用的是官方的 实现解释) 获取当前版本的 Element-UI 的样式文件(在线 XHR 获取) 根据用户选择的主题色,生成一系列对应的颜色(比如,选择绿色,生成不同程度的浅绿...blob/master/src/views/theme/index.vue#L167-L297)) 1、首先我们需要拿到通过 package.json 拿到 element-ui 的版本号,根据该版本号去请求相应的样式...// 如果没有chalk就是第一次换颜色,需要远程获取css文件,赋值给chalk // 后续的换颜色操作,就不用远程获取了 if (!...version}/lib/theme-chalk/index.css` await this.getCSSString(url, 'chalk') } getCSSString 方法是一个常用 XHR

5.1K30
您找到你想要的搜索结果了吗?
是的
没有找到

这款错误监控平台不可缺少

当我们在运营一个网站,尤其是技术产品是基于网站的情况下,如何确保网站运营正常,如何先于用户获知网页崩溃、异常信息,如何从技术层面上监控及时解决错误信息,如何通过对页面的各项收集数据来进行系统分析,从而有助于更好地规划产品命脉...当我们尝试蒲公英上使用这款工具的时候却出现了一些问题,比如,蒲公英每天能产生千万级别的访问信息,使得原有的统计分析性能变得不是很理想,这对于一款以统计分析为主的产品来说是致命的。...FrontJS 为开发人员提供了包含错误收集、页面流向、性能分析、资源及请求监控等用户体验改进所需的信息,最主要的功能当然还是 JS 错误监控:我们会收集精细到 console.log 级别的任何...1、提供了包含错误收集,页面流向,性能分析,资源及请求监控等用户体验改进所需的信息; 2、提供 API,甚至可以错误信息中包含自定义信息; 3、可以产生自定义错误,或者直接定义 Error 对象; 4...概览页面 接下来是「近 12 小时异常」汇总,分别从脚本、资源、XHR 方面收集展现,每一条信息都包含时间、反馈设备的详情、屏幕信息、IP 地址,并且汇总了该异常的出现总数。

1K60

高性能JavaScript-JS脚本加载与执行对性能的影响

较早时期,浏览器不支持并行下载的时候,js脚本的下载执行按照在html文档中的位置依次进行,可以想象当页面有大量js脚本页面的加载有多慢; js脚本的下载会阻塞其他资源的下载,比如图片、外链css等...目前较流行的grunt/gulp/webpack等编译工具都支持文件的打包合并,webpack甚至可以将css文件也一打包到js文件里。...之所以将动态script标签插入head而不是body中是因为低版本IE中如果在html文档未解析完毕,body中插入script标签会抛出“操作已终止”的错误信息。...动态脚本请求到的js脚本是立即执行的。 动态创建script标签,某些业务场景下需要监听被请求的js脚本是否加载完毕。...注入js脚本 使用XHR注入脚本是比较偏门并且应用面很小的一门技术,原理就是用Ajax去get请求一个js文件,监听xhr.status,获取到的响应信息是js文件的代码。

1.9K91

前端错误捕获方案总结

: JS 代码运行错误、语法错误等 异步错误等 静态资源加载错误 接口请求报错 错误捕获方式 1)try/catch 只能捕获代码常规的运行错误,语法错误和异步错误不能捕获到 示例: // 示例1:常规运行时错误...console.error 输出而避免应用崩溃 可以 Vue.config.errorHandler 中将捕获的错误上报 Vue.config.errorHandler = function (err...} render() { if (this.state.hasError) { // 自定义降级后的 UI 渲染 return Something went...(err); } 跨域问题 如果当前页面中,引入了其他域名的JS资源,如果资源出现错误,error 事件只会监测到一个 script error 的异常。...方法 replaceAop(originalXhrProto, "send", originalSend => { return function(...args) { // 当请求结束触发

1.5K30

Ajax向服务器端发送请求

JSON对象作为响应数据的格式 http请求和响应的过程中,无论是请求参数还是响应内容,如果是对象类型,最终都会被转换为对象字符串进行传输。...(); Ajax状态值 Ajax请求执行的过程中每一步都对应一个状态码 数值 意义 0 请求没有初始化,没有调用 open() 1 请求已经建立,但是没有发送 send() 2 请求已经发送 3 请求正在处理...,通常响应中已经有部分数据可以使用了 4 响应已经完成,可以获取使用服务器响应了 xhr.readyState;//获取Ajax状态值 onreadstatechange事件 Ajax状态码发生变化的时候触发...4xx 客户端错误请求可能出错,妨碍服务器的处理 5xx 服务端错误,服务器不能正确执行一个正确的请求 低版本浏览器缓存问题 由于缓存的存在,在请求地址不发生改变的情况下,只有第一次的数据请求会发送到服务器端...); } else { // 调用失败回调函数并且将xhr对象传递给回调函数 defaults.error(responseText, xhr); } } // 当网络中断

2.2K20

鸟瞰前端 , 再论性能优化

facebook应用的BigPipe方案是个很不错的借鉴思想,还有淘宝也有首页做了相应的切片方案,对页面合理的分块,服务器和客户端建立某种对应机制,让各个页面块并行的服务器端拼接完成吐出来,目前我对这块没有太深的了解...),特定历史背景下产生的,低效率很难跟上时代发展,99年1.0基础上修订出1.1版本,沿用至今。...http1.1期:在请求头信息加入keep Alive保持连接的一定活性(当然也加入了100 Status节约带宽、cache特性等),允许一个连接通道生命期内重复发送不同的应用请求,一定程度上减轻了连接资源利用效率问题...xhr请求对象中的利用:创建一个简单工厂向外面提供xhr对象,工厂内部用闭包开辟一个数组队列单例用来存放xhr对象,当调用者需要xhr对象工厂就从队列里取出readyState状态为空闲(0/4)的xhr...第一次发文章,有错误的地方请大家指点一二。

2.2K10

前端项目从0到1的感悟

,如: //项目的全局唯一对象window.li = { version: 20170301,//当前版本号,打包gulp自动变更 errorTips: '哎哟,网络好像有点问题了..'...当调用后台接口返回登录过期或者非法请求后,需要做些通用的处理,如去登录页、三秒提示后去登录页、去错误页等,总之存在需求变故的可能的地方,能封装的方法尽量封装,免得到时候需求一变化全部都得去改 5.通用的去登录...error-page指向一个错误页面,但是那样都是跳转页面404错误还好,其他错误也跳页面其实并不友好,而其他的错误通常是请求错误,我们只要设置一个ajax全局监听即可,下面是代码片段,当然还可以做很多你暂时没有想到的事情...$(document).on('ajaxError', function(e, xhr, options){ if (404 == xhr.status) { common.404...() }else if(500 == xhr.status){ common.500() }}) 定义common.css 所有公共样式,同样的每个页面都要引用,其中整个项目样式通用控制起决定性作用

1.1K31

AJAX 原理与 CORS 跨域

在此之前,其实这种技术已经存在被一些人实现,但并没有流行也没有被浏览器支持。不过在此之后,IE5第一次引入 XHR对象,支持 ajax技术,后续被所有浏览器支持。...// 第三个参数代表是否异步,为true异步,为false同步 // 第四五个参数为可选的授权使用的参数,因为安全性不推荐明文使用 xhr.open('get', 'example.php', true...,如果不需要,传入null xhr.send(data); 当请求的类型为 get/head,send()的参数会被忽略并置为null,send()传递的参数会影响到我们请求的头部 content-type...XHR的高级功能 xhr v2里提供了超时和进度事件。...但它也有一些缺陷: 访问的方式是请求js,所以如果域名不安全,则很容易被恶意代码直接执行攻击 无法检测是否错误,因为js不支持这样的接口事件,只能超时判断 上面两种方式很容易看出,我们支持CORS之前

1.3K21

使用神器eruda 进行移动端调试

截止至本文发稿之日,erudaGitHub上已经有2.7K个star ? 你是否被以下情况所困扰?? ?PC上调试好好的页面,运行在手机端却直接崩溃,很难判断究竟发生了什么 ?...手机端页面请求服务端数据后,页面渲染不正确,根本不清楚是接口返回错误还是前端渲染错误 ?...Eruda 是一个专为手机网页前端设计的调试面板,类似 DevTools 的迷你版,其主要功能包括:捕获 console 日志、检查元素状态、显示性能指标、捕获XHR请求、显示本地存储和 Cookie...4.Network面板:图表显示页面加载速度;查看页面各资源请求时间(Android);捕获XHR请求,查看发送数据、返回头、返回内容等信息。 ?...5.Resources面板:查看清除localStorage、sessionStorage及cookie;查看页面加载脚本及样式文件;查看页面加载图片。 ?

2.4K30

【性能】688- 前端性能优化——从 10 多秒到 1.05 秒

2、cache-control cache-control:max-age=number ,这是 http1.1 出现的 header 信息,主要是利用该字段的 max-age 值来进行判断,它是一个相对值...协商缓存 协商缓存都是由浏览器和服务器协商,来确定是否缓存,协商主要通过下面两组 header 字段,这两组字段都是成对出现的,即第一次请求的响应头带上某个字段 ( Last-Modified或者 Etag...1、Last-Modified/If-Modified-Since 二者的值都是 GMT 格式的时间字符串,具体过程: 浏览器第一次跟服务器请求一个资源,服务器返回这个资源的同时, respone...浏览器再次跟服务器请求这个资源 request 的 header 上加上 If-Modified-Since 字段,这个 header 字段的值就是上一次请求返回的 Last-Modified...如果协商缓存没有命中,浏览器直接从服务器加载资源,Last-Modified 的 Header 重新加载的时候会被更新,下次请求,If-Modified-Since 会启用上次返回的Last-Modified

1.3K21

20道前端高频面试题(附答案)

错误发生,需修改请求的内容后再次发送请求。另外,浏览器会像 200 OK 一样对待该状态码。...除此之外,也可以服务器端拒绝请求且不想说明理由使用。以下情况会出现404:404.0 -(无) – 没有找到文件或目录。404.1 - 无法在所请求的端口上访问 Web 站点。...)5XX 的响应结果表明服务器本身发生错误.(1)500 Internal Server Error该状态码表明服务器端执行请求发生了错误。...)5XX 服务器错误500 internal sever error,表示服务器端执行请求发生了错误501 Not Implemented,表示服务器不支持当前请求所需要的某个功能503 service...将链接指向某网站);(2)攻击类型XSS 可以分为存储型、反射型和 DOM 型:存储型指的是恶意脚本会存储目标服务器上,当浏览器请求数据,脚本从服务器传回执行。

97730

解决:ajax请求错误ajax error:{readyState:0,status:0,statusText:er...

然而,实际开发过程中,有时我们可能会遇到ajax请求出现错误的情况,其中一个常见的错误就是出现"ajax error:{"readyState":0,"status":0,"statusText":"...综上所述,当我们遇到"ajax error:{"readyState":0,"status":0,"statusText":"error"}"错误提示,可以按照以上的解决方法进行逐步排查错误的原因,针对性地进行处理...如果请求成功,我们成功回调函数中处理返回的数据。如果请求失败,我们使用error回调函数来处理错误error回调函数中,我们判断xhr的status属性是否为0。...如果xhr的status不为0,则表示出现其他错误,我们可以通过error参数获取具体的错误信息,打印控制台上。...当出现ajax error的错误提示,通过以上的示例代码,我们能够更精确地定位错误所在,给出相应的解决方案。当然,具体的处理方式还需根据实际情况进行调整和扩展。

87450

ES6 Promise封装AJAX请求

当使用Promise封装AJAX请求,我们可以将AJAX请求的结果作为Promise对象的解决值或拒绝原因,以便更好地管理和处理请求的结果。...= () => { reject(new Error('请求发生错误')); // 请求发生错误,调用reject传递错误信息 }; xhr.send(); });};创建一个...执行器函数中执行AJAX请求根据请求结果调用resolve或reject。示例让我们通过一个示例来理解如何使用ES6 Promise封装AJAX请求。...(new Error('请求发生错误')); // 请求发生错误,调用reject传递错误信息 }; xhr.send(); });};// 使用Promise封装的AJAX请求makeAjaxRequest...Promise的执行器函数中,我们使用XMLHttpRequest对象执行AJAX请求根据请求的结果调用resolve或reject。

43910

echarts3 地图只显示南沙群岛,刷新页面显示正常

我遇到的问题则是第一次进入该页面显示不正常,再次刷新后显示正常。...下面具体说下问题出现的应用场景: 1.基于ace admin的管理后台 2.index.html文件中引入echarts.js以及china.js一切正常,如果放在子页面则不正常,具体有两种:如果把echart.js...放在index.html,把china.js放在子页面里面就会出现本文所述的现象;把两个js文件都放在子页面html文件里面,则出现echarts没有定义的错误 经过上述分析,相信小伙伴已经知道如何解决这个问题了....js 文件的 GET 请求。...一旦新元素被添加到文档,代码将被执行,准备使用。 这种方法的主要优点是,您可以下载不立即执行的 JavaScript 代码。

1.4K40
领券