JS清空数组
摘要:推荐使用:.length = 0来清空数组,使用 arr = [];其实并没有清空数组,只是给arr重新附对象,是一个新的对象
阅读全文
JS判定数据类型
摘要:1.typeof 我们能够使用typeof判断变量的身份,判断字符串得到string,数字和NaN得到number,函数会得到function等,但是判断数组,对象和null时都会得到object,详细请看js数据类型,这就是typeof的局限性,并不能准确的判断该变量的"真实身份"。那如何判断一个
阅读全文
JS编程规范
摘要:在第一家公司用C++时,公司有着严格的代码规范,甚至到了严苛的地步,现在回想起来,对它充满感激。一个好的习惯让你收益终身。 之后使用JS/TS却没有为自己定一套编程规范,所幸为时不晚,在这里参考airbnb公司代码规范。 该规范转载至阮一峰大大的ES入门 1.块级作用域 1)let 取代var ES
阅读全文
js中的instanceof运算符
摘要:概述 instanceof运算符用来判断一个构造函数的prototype属性所指向的对象是否存在另外一个要检测对象的原型链上 语法 obj instanceof Object;//true 实例obj在不在Object构造函数中 描述 instanceof 运算符用来检测 constructor.p
阅读全文
JS回调函数深入篇
摘要:<有些错别字> 在Javascript中,函数是第一类对象,这意味着函数可以像对象一样按照第一类管理被使用。既然函数实际上是对象:它们能被“存储”在变量中,能作为函数参数被传递,能在函数中被创建,能从函数中返回。 因为函数是第一类对象,我们可以在Javascript使用回调函数。在下面的文章中,我们
阅读全文
JS Number类型数字位数及IEEE754标准
摘要:JS的基础类型Number,遵循 IEEE 754 规范,采用双精度存储(double precision),占用 64 bit。如图 意义 1位用来表示符号位 11位用来表示指数 52位表示尾数 浮点数,比如 1 2 0.1 >> 0.0001 1001 1001 1001…(1001无限循环)
阅读全文
JS中数组的内建函数说明
摘要:函数简述 map():返回一个新的Array,每个元素为调用func的结果 filter():返回一个符合func条件的元素数组 some():返回一个boolean,判断是否有元素是否符合func条件 every():返回一个boolean,判断每个元素是否符合func条件 forEach():没
阅读全文
JS 中的数组遍历方式效率比较
摘要:JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代码如下: 简要说明: 最简单的一种,也是使用频率最高的一种,虽然性能不弱,但仍有优化空间 第二种:优化版for循环 代码如下
阅读全文
ES6中变量的解析赋值的用途
摘要:变量的解构赋值用途很多。 (1)交换变量的值 上面代码交换变量x和y的值,这样的写法不仅简洁,而且易读,语义非常清晰。 (2)从函数返回多个值 函数只能返回一个值,如果要返回多个值,只能将它们放在数组或对象里返回。有了解构赋值,取出这些值就非常方便。 (3)函数参数的定义 解构赋值可以方便地将一组参
阅读全文
ES6中的Set与Map数据结构
摘要:本文实例讲述了ES6学习笔记之Set和Map数据结构。分享给大家供大家参考,具体如下: 一.Set ES6提供了新的数据结构Set。类似于数组,只不过其成员值都是唯一的,没有重复的值。 Set本身是一个构造函数,用来生成Set数据结构。 1 . Set函数可以接受一个数组(或类似数组的对象)作为参数
阅读全文
【javascript】函数中的this的四种绑定形式
摘要:原文地址:http://www.cnblogs.com/penghuwan/p/7356210.html 目录 this的默认绑定 this的隐式绑定 隐式绑定下,作为对象属性的函数,对于对象来说是独立的 在一串对象属性链中,this绑定的是最内层的对象 this的显式绑定:(call和bind方法
阅读全文
ECMAScript 定义类、对象
摘要:使用预定义对象只是面向对象语言的能力的一部分,它真正强大之处在于能够创建自己专用的类和对象。 ECMAScript 拥有很多创建对象或类的方法。 工厂方式 原始的方式 因为对象的属性可以在对象创建后动态定义,所有许多开发者都在 JavaScript 最初引入时编写类似下面的代码: var oCar
阅读全文
JS中函数参数值传递和引用传递
摘要:转载:http://www.cnblogs.com/chenwenhao/p/7009606.html 也许大家对于函数的参数都不会太在意,简单来说,把函数外部的值复制给函数内部的参数,就和把值从一个变量复制到另一个变量一样。深入研究,你会发现其实没那么简单,这个传参是要分俩种情况(其实这是个错误的
阅读全文
JS中的!= 、== 、!==、===的用法和区别
摘要:与c++中每一种类型都有明确的的定义不同:因JS中var定义存在,未具体区分类型,!=与==不能包含所有的条件,故加入!==与 用法; ==与!= 在比较时会自动进行类型转换; 与!==在比较时并不会进行类型转换!!!
阅读全文
JS中的数组排序函数sort()
摘要:JavaScript实现多维数组、对象数组排序,其实用的就是原生的sort()方法,用于对数组的元素进行排序。 sort() 方法用于对数组的元素进行排序。语法如下: arrayObject.sort(sortby) 返回值为对数组的引用。请注意,数组在原数组上进行排序,不生成副本。 如果调用该方法
阅读全文
JavaScript中this详解
摘要:摘要:JavaScript中的this总是让人迷惑,应该是js众所周知的坑之一。 个人也觉得js中的this不是一个好的设计,由于this晚绑定的特性,它可以是全局对象,当前对象,或者…有人甚至因为坑大而不用this。 其实如果完全掌握了this的工作原理,自然就不会走进这些坑。来看下以下这些情况中
阅读全文
Javascript闭包(Closure)
摘要:一、变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域。 变量的作用域无非就是两种:全局变量和局部变量。 Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。 var n=999; function f1(){ alert(n); } f1(); // 9
阅读全文
JS的Prototype属性
摘要:转载至: http://blog.sina.com.cn/s/blog_7045cb9e0100rtoh.html 函数:原型 每一个构造函数都有一个属性叫做原型(prototype,下面都不再翻译,使用其原文)。这个属性非常有用:为一个特定类声明通用的变量或者函数。 prototype的定义 你不
阅读全文
JS中的prototype
摘要:转载至 (http://www.cnblogs.com/yjf512/) 作者:轩脉刃(yjf512) JS中的phototype是JS中比较难理解的一个部分 本文基于下面几个知识点: 1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建
阅读全文
JavaScript的self和this使用小结
摘要:一、self这个非常简单。我们知道,打开任何一个网页,浏览器会首先创建一个窗口,这个窗口就是一个window对象,也是js运行所依附的全局环境对象和全局作用域对象。self 指窗口本身,它返回的对象跟window对象是一模一样的。也正因为如此,window对象的常用方法和函数都可以用self代替wi
阅读全文