随笔分类 - javascript
摘要:很多时候再项目中,我们往往需要先获取图片的大小再加载图片,但是某些特定场景,如用过cocos2d-js的人都知道,在它那里只能按比例缩放大小,是无法设置指定大小的图片的,这就是cocos2d-js 的坑了,我们必须先获取图片大小,计算比例再对图片进行缩放。 查阅资料,我总结了两种通过url获取图片大
阅读全文
摘要:首先确保在项目中引入了echarts和echarts-gl"echarts": "^4.9.0","echarts-gl": "^1.1.2" 剩下的配置好optionData的数据,交给代码 <template> <div class="water-eval-container"> <div cl
阅读全文
摘要:一、背景 Webpack 最初的目标是实现前端项目的模块化,旨在更高效地管理和维护项目中的每一个资源 模块化 最早的时候,我们会通过文件划分的形式实现模块化,也就是将每个功能及其相关状态数据各自单独放到不同的JS 文件中 约定每个文件是一个独立的模块,然后再将这些js文件引入到页面,一个script
阅读全文
摘要:一、前言 下拉刷新和上拉加载这两种交互方式通常出现在移动端中 本质上等同于PC网页中的分页,只是交互形式不同 开源社区也有很多优秀的解决方案,如iscroll、better-scroll、pulltorefresh.js库等等 这些第三方库使用起来非常便捷 我们通过原生的方式实现一次上拉加载,下拉刷
阅读全文
摘要:一、是什么 Web攻击(WebAttack)是针对用户上网行为或网站服务器等设备进行攻击的行为 如植入恶意代码,修改网站权限,获取网站用户隐私信息等等 Web应用程序的安全性是任何基于Web业务的重要组成部分 确保Web应用程序安全十分重要,即使是代码中很小的 bug 也有可能导致隐私信息被泄露 站
阅读全文
摘要:一、是什么 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一 SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统 SSO 一般都需要一个独立的认证中心(passport),子系统的登录均得通过passport,子系统
阅读全文
摘要:一、是什么 不管怎样简单的需求,在量级达到一定层次时,都会变得异常复杂 文件上传简单,文件变大就复杂 上传大文件时,以下几个变量会影响我们的用户体验 服务器处理数据的能力 请求超时 网络波动 上传时间会变长,高频次文件上传失败,失败后又需要重新上传等等 为了解决上述问题,我们需要对大文件上传单独处理
阅读全文
摘要:一、用途 可视区域即我们浏览网页的设备肉眼可见的区域,如下图 在日常开发中,我们经常需要判断目标元素是否在视窗之内或者和视窗的距离小于一个值(例如 100 px),从而实现一些常用的功能,例如: 图片的懒加载 列表的无限滚动 计算广告元素的曝光情况 可点击链接的预加载 二、实现方式 判断一个元素是否
阅读全文
摘要:一、是什么 函数缓存,就是将函数运算过的结果进行缓存 本质上就是用空间(缓存存储)换时间(计算过程) 常用于缓存数据计算结果和缓存对象 const add = (a,b) => a+b;const calc = memoize(add); // 函数缓存calc(10,20);// 30calc(1
阅读全文
摘要:一、递归 递归(英语:Recursion) 在数学与计算机科学中,是指在函数的定义中使用函数自身的方法 在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数 其核心思想是把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解 一般来说,递归需要有边界条件、
阅读全文
摘要:reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。reduce() 方法接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce() 的数组。 reduce() 的几个强大用法: 数组求和 var total =
阅读全文
摘要:一、是什么 正则表达式是一种用来匹配字符串的强有力的武器 它的设计思想是用一种描述性的语言定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的 在 JavaScript中,正则表达式也是对象,构建正则表达式有两种方式: 字面量创建,其由包含在斜杠之间的模式组成 co
阅读全文
摘要:一、是什么 AJAX全称(Asynchronous Javascript And XML) 即异步的JavaScript 和XML,是一种创建交互式网页应用的网页开发技术,可以在不重新加载整个网页的情况下,与服务器交换数据,并且更新部分网页 Ajax的原理简单来说通过XmlHttpRequest对象
阅读全文
摘要:从两种数据类型说起 在js中,变量的类型可以大致分成两种:基本数据类型和引用数据类型,其中基本数据类型指的是简单的数据段,包括: Undefined Null Boolean Number String(字符串在一些其他语言中是被当做对象使用的,属于引用类型,但在js里是基本类型) 而引用类型的值指
阅读全文
摘要:在进行窗口的resize、scroll,输入框内容校验等操作时,如果事件处理函数调用的频率无限制,会加重浏览器的负担,导致用户体验非常糟糕。此时我们可以采用debounce(防抖)和throttle(节流)的方式来减少调用频率,同时又不影响实际效果。 函数防抖 函数防抖(debounce):当持续触
阅读全文
摘要:一、是什么 事件代理,俗地来讲,就是把一个元素响应事件(click、keydown......)的函数委托到另一个元素 我们知道,事件流的都会经过三个阶段:捕获阶段 -> 目标阶段 -> 冒泡阶段,而事件委托就是在冒泡阶段完成 事件委托,会把一个或者一组元素的事件委托到它的父层或者更外层元素上,真正
阅读全文
摘要:1.方法一:用定时器定时,没跑完定时器,点击按钮无效 <script> var isClick = true; $("button").on("click",function(){ if(isClick) { isClick = false; //事件 console.log('我被点击了'); /
阅读全文
摘要:try 测试代码块的错误。 catch 语句处理错误。 throw 创建并跑出错误。 try { //在这里运行代码 抛出错误 } catch(err) { //在这里处理错误 } 下面是一个实例: <p>请输出一个 5 到 10 之间的数字:</p> <input id="demo" type="
阅读全文
摘要:JS中会使用typeof 和 instanceof来判断一个变量是否为空或者是什么类型的。 ES6规范中有7种数据类型,分别是基本类型和引用类型两大类 基本类型(简单类型、原始类型):String、Number、Boolean、Null、Undefined、Symbol 引用类型(复杂类型):Obj
阅读全文
摘要:一、是什么 继承(inheritance)是面向对象软件技术当中的一个概念 如果一个类别B“继承自”另一个类别A,就把这个B称为“A的子类”,而把A称为“B的父类别”也可以称“A是B的超类” 继承的优点 继承可以使得子类具有父类别的各种属性和方法,而不需要再次编写相同的代码 在子类别继承父类别的同时
阅读全文

浙公网安备 33010602011771号