javascript
ZzzMxin
这个作者很懒,什么都没留下…
展开
-
Edge浏览器乱码问题
Edge浏览器乱码问题问题描述:今天在国际化页面中遇到edge浏览器部分中文字符乱码的问题,而在其他浏览器测试均正常。乱码部分的js文件是动态引入的,在加载过程出现了问题,导致界面出现字符乱码。问题分析:首先检查js文件的编码格式,跟界面保持一致,是以UTF-8形式,编码形式可以通过charset来设置。编码格式正确,并且在其他浏览器中均没有问题,网上很多类似的情况也认为是edge浏...原创 2019-01-15 00:39:37 · 9058 阅读 · 0 评论 -
DOM事件机制
DOM事件流(event flow )存在三个阶段:事件捕获阶段、处于目标阶段、事件冒泡阶段。事件捕获:从外到内(从父到子)传播事件冒泡:从内到外APIaddEventListener(event, listener, useCapture)event----事件名称,如click,不带onlistener----事件监听函数useCapture----是否采用事件捕获进行事件捕...原创 2019-07-03 20:03:05 · 204 阅读 · 0 评论 -
JavaScriptavaScript之WebSocket
JavaScriptavaScript之WebSocket定义WebSocket 是一种在单个 TCP 连接上进行全双工通讯的协议。具有一次握手,持久连接,双向数据传输的特点。基本使用实例化WebSocketvar Socket = new WebSocket(url, [protocol] );WebSocket事件事件 事件处理程序 描述open Socket.ono...原创 2019-07-02 20:48:41 · 301 阅读 · 0 评论 -
JavaScript中的防抖和节流
JavaScript中的防抖和节流场景引入监听浏览器界面滚动执行回调,一旦滚动,就会触发大量回调,导致性能大大下降,应该如何优化该功能?概念说明防抖:未达到指定时间,再次触发监听时间,则会重新开始计时。(类比电梯例子)节流:在指定时间内,多次触发事件,回调只执行一次。(类比游戏中释放技能)代码实例防抖函数:1秒内再次滚动页面,则重新开始计时。var count = 0; ...原创 2019-07-01 23:52:20 · 171 阅读 · 0 评论 -
JavaScript数据类型
基本数据类型JavaScript有六中基本数据类型:undefined、 null、boolean、number、sring、symbol (ES6新增)基本数据类型可以用typeof来判断(null除外,下文会说到)存储在栈中的简单数据段,方便频繁使用不可变性(只是改变了变量的指向,变量是没有类型的,变量的值才有)值的比较==&===前者会做类型的自动转化,只比较值,后者...原创 2019-05-05 23:10:12 · 121 阅读 · 0 评论 -
浅谈Promise
setTimeout把回调函数放在事件循环中,如果此时事件循环队列中已有任务,回调需要等待,通常没有抢占,因此setTimeout精准度不高,一般会在设定的时间之后才触发回调。回调的问题控制反转,导致信任链断裂。顺序性无法保证(Zalgo)Promise好处解决回调地狱----链式调用控制反转问题----回调只调用一次规范三种状态:Pending、fulfil...原创 2019-05-04 18:23:00 · 173 阅读 · 1 评论 -
eval全局作用域
eval全局作用域问题描述:在使用eval()执行代码的时候,遇到作用域的问题。eval()语句写于函数内,因此eval()内执行的变量也只是局部变量。函数外部无法访问。问题分析:var x = 10;function testEval() { eval("var x = 20");//局部变量}testEval();console.log(x); //10使用window....原创 2019-01-15 23:18:48 · 2046 阅读 · 0 评论 -
js中的奇言妙语之"+"
js中的奇言妙语一张图片引发的思考,首先,请看图:如果以上内容你全部答对,本文就没有阅读的必要了,当然了,如果有兴趣,也可以稍微看看。知识说明其实上面的式子主要涉及js中运算符+的理解。+在js中有两个作用:作为一元运算符,用于显示地将操作数转化为数字。作为二元运算符,对两个操作数做拼接操作。这里拼接有几个基本规则:NaN是一个特殊的number,我理解为不是数字的数字,并...原创 2019-08-18 23:58:57 · 284 阅读 · 0 评论