随笔分类 - JavaScript 总结
记录 JavaScript 相关的基础知识
摘要:逻辑运算符对操作数进行布尔运算,经常和关系运算符配合使用,逻辑运算符分为逻辑非 、逻辑与 和逻辑或 ,可以应用于任何数据类型 逻辑非 逻辑非用 表示,它会先把操作数转为布尔值,然后再取反。如果同时使用两个逻辑非操作符,则相当于使用 转型函数。 逻辑与 逻辑与用两个和号 表示,要两个操作数,当操作数都
阅读全文
摘要:赋值运算符 赋值操作符用 符号表示,把等号右边的值赋值给左边的变量或属性 赋值运算符的优先级很低,所以在复杂的赋值操作中需要用圆括号来保证赋值顺序。 如果表达式中出现了多个赋值运算符,赋值顺序是从右到左 JS提供了11个复合赋值运算符,可以简化赋值操作 圆括号运算符 圆括号运算符也叫分组运算符,有两
阅读全文
摘要:关系运算符用于比较两个值之间的关系,关系成立则返回true,不成立则返回false, JS提供了`===, !==, ==, !=, , =, 'a'; // true 'B' 'a'; // false '2' '11'; // true 2的Unicode值大于1的Unicode值 ['b']
阅读全文
摘要:算术运算符主要用于算数操作,算术运算符包括一元算术运算符和二元算术运算符 一元算术运算符 在JS中一元算术运算符包括一元加法 ,一元减法 ,递增 ,递减 一元加 一元加法运算符使用符号 表示,放在数值前面,对数值不会产生任何影响 如果为非数值应用一元加法运算,会自动代用 转型函数 使用一元加运算,可
阅读全文
摘要:启用JavaScript严格模式编程可以避免代码在执行过程中出现意想不到的结果,JavaScript是一种向后兼容的语言,所以为了消除JS中一些不严谨不安全的语法,减少怪异行为的出现,在严格模式下编程是很有必要的。 启用严格模式的方法很简单,只需要在脚本顶部添加 即可,也可以只在函数中使用,只需在函
阅读全文
摘要:JavaScript表达式分为原始表达式和复杂表达式 原始表达式 原始表达式是表达式的最小单位,所以它不再包含其他表达式。原始表达式包括this关键字、标识符引用、字面量引用、数值初始化、对象初始化和分组表达式。 this关键字 this // 返回当前对象 标识符 bar; // 返回变量bar的
阅读全文
摘要:基本概念 JavaScript是一种动态的弱类型解释性语言,语法借鉴了Java,Java是一种静态的强类型解释型语言。JavaScript由ECMAScript、DOM和BOM三部分组成,主要用于实现网页的动态效果、人机交互,当然现在它的能力远不止这些了。 ECMAScript由ECMA-262定义
阅读全文
摘要:定义 标识符(Identifier)是一个名字,用来对变量、函数、属性、参数命名,或某些循环语句中跳转位置的标记。变量是标识符的一种。 变量的特性 JavaScript中的变量是弱类型的,也叫松散类型的,它可以用来保存任何数据类型。JavaScript是一种动态语言,在运行期间才做数据类型的检查,所
阅读全文
摘要:"参考链接" 核心函数 js / 图片预加载 @return {function} imgList 需要预加载的图片地址 callback 图片加载完成后的回掉,可获取到加载进度值 timeout 图片加载等待时间 / (function() { var loader = function(imgL
阅读全文
摘要:"参考链接" 好处是可以自定义动画效果,用起来很方便,以上代码直接复制是可以运行的
阅读全文
摘要:跨网络异步获取资源的功能以前是使用XMLHttpRequest对象实现的,Fetch API提供了更好的替代方案,可以很容易的被其他技术使用(如Servise Workers) Fetch API提供了一个全局的fetch()方法,这个方法提供了一种简单的、合乎逻辑的方式来跨网络异步获取资源。fet
阅读全文
摘要:焦点元素 通常情况下,只有可交互的元素能够获取焦点,比如表单元素、超链接。如果要让不可交互元素获得焦点,需要做特殊处理:先将tabIndex属性设置为-1,再调用focus()方法 <div id="test" style="height:30px;width:100px;background:te
阅读全文
摘要:静态属性和方法:对象自身的属性和方法,实例无法访问 公有属性和方法:实例继承的属性和方法 私有属性和方法:对象外部无法访问的属性和方法 特权方法:可以访问私有、公有属性和方法 function People() { this.name = 'wmui'; // 公有属性 // 私有属性和方法 let
阅读全文
摘要:数组 数组是最简单的内存数据结构,由于其简单性和灵活性,很多编程语言都内置数组,JS当然也支持。关于数组的介绍可参考以下文章 数组基础学习 数组方法学习 栈 栈是一种遵从后进先出(LIFO)原则的有序集合。新添加的或待删除的元素都保存在栈的 同一端,称作栈顶,另一端就叫栈底。在栈里,新元素都靠近栈顶
阅读全文
摘要:集合是由一组无序且唯一(即不能重复)的项组成的数据结构,可以把集合想象成一个既没有重复元素,也没有顺序概念的数组。在数学中,集合是一组不同的对象(的集),并且有并集、交集、差集等基本操作。 ES6提供了Set对象用于表示集合,关于Set对象的基本操作可[移步于此](https://blog.8688
阅读全文
摘要:链表存储有序的元素集合,链表中的元素在内存中不是连续放置的,每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(也称指针或链接)组成。下图展 示了一个链表的结构: 相对于传统的数组,链表的一个好处在于,添加或移除元素的时候不需要移动其他元素,只需要找到指针的位置。而数组添加元素和移除元素,需
阅读全文
摘要:集合、字典和散列表都可以存储不重复的值。在集合中,存储的是每个值本身。而在字典中,存储的是键值对(也称作字典映射)。在散列表中存储的也是键值对(也称作散列映射),但是两种数据结构的实现方式略有不同 ### 字典 ES6提供了Map类,也就是上面说的字典,Map类的具体操作可[移步至此](https:
阅读全文
摘要:树的相关术语 树是一种分层数据的抽象模型,一个树结构包含一系列存在父子关系的节点,每个节点都有一个父节点(除了顶部的第一个节点)以及零个或多个子节点: 根节点:位于树顶部的节点叫作根节点(11) 内部节点:至少有一个子节点的节点称为内部节点(7、5、9、15、13、20) 外部节点:没有子元素的节点
阅读全文
摘要:算法复杂度用于衡量算法的效率,用大O来表示。使用大O表示法分析算法复杂度时,时常遇到以下几类函数  #### O(1) ```js function increment(num){ return ++
阅读全文
摘要:冒泡排序 冒泡排序是最简单的一种排序算法,同时也会效率最低的,因此在开发中很少使用这种算法进行排序 冒泡排序通过比较任何两个相邻的项,如果第一个比第二个大,则交换它们,元素项向上移动至 正确的顺序,就好像气泡升至表面一样,因此叫冒泡排序。 假设有一组数据[5,4,3,2,1],使用冒泡排序的比较过程
阅读全文

浙公网安备 33010602011771号