复习 Array,重学 JavaScript】的更多相关文章

1 数组与对象 在 JavaScript 中,一个对象的键只能有两种类型:string 和 symbol.下文只考虑键为字符串的情况. 1.1 创建对象 在创建对象时,若对象的键为数字,或者由 字母+数字 组成,那么键上的引号可以省去: var obj1 = {1: 'one', 2: 'two'} // 等同于 {'1': 'one', '2': 'two'} var obj2 = {'one': 1, 'two': 2} // 等同于 {one: 1, two: 2} 如果对象的键由 数字+…
作者:狐狸家的鱼 GitHub:surRimn 整理自MDN文档 数组 数组是一种类列表对象,长度和元素类型不固定. 描述 访问数组 JavaScript数组的索引是从0开始的,第一个元素的索引为0,最后一个为数组长度减一. 如果指定的索引是一个无效值,不会报错,而是返回undefined. 以数字开头的属性不能用点号引用,必须用方括号. 正则匹配结果所返回的数组 RegExp.exec.String.match.String.replace都会返回这样的数组. 属性 Array.length:…
什么是对象,其实就是一种类型,即引用类型. 一.创建Object类型有两种. ①使用new运算符 <script type="text/javascript"> var box = new Object(); box.name = '李四'; box.age = 28; //new 关键字可以省略 var box = Object(); </script> ②字面量表示法(常用的方法) <script type="text/javascript&…
作者:狐狸家的鱼 GitHub:surRimn 整理自MDN文档 带键的集合 映射 Map对象 一个Map对象在迭代时会根据对象中元素的插入顺序来进行 — 一个 for...of 循环在每次迭代后会返回一个形式为[key,value]的数组. 1.语法 new Map([iterable]) iterable可以是一个数组或者其他iterable对象,其元素或为键值对,或为两个元素的数值.每个键值对都添加到新的Map.null会被当作undefined. 2.属性 Map.length:属性le…
一.script标签解析 <script>xxx</script>这组标签,是用于在html 页面中插入js的主要方法.它主要有以下 几个属性: 1.charset:可选.表示通过src属性指定的字符集.由于大多数浏览器忽略它,所以很 少有人用它. 2.defer:可选.表示脚本可以延迟到文档完全被解析和显示之后再执行.由于大多数浏 览器不支持,故很少用. 3.language:已废弃.原来用于代码使用的脚本语言.由于大多数浏览器忽略它,所以 不要用了. 4.src:可选.表示包含…
1. 继承 ES 中只支持实现继承,而且其实现继承主要依靠原型链来实现的. 2. 原型链 ES中 描述了 原型链的概念,并将原型链作为实现继承的主要方法.其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法. 回顾一下构造函数.原型和实例的关系 每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针.那么假如我们让原型对象等于另一个类型的实例.那么此时的原型对象将包含一个指向另一个原型的指针,相应地,另一个原型中也包含着一个指向另一…
1. 什么是匿名函数? 匿名函数就是没有名字的函数,有时候也称为< 拉姆达函数>.匿名函数是一种强大的令人难以置信的工具.如下: function a(a1, a2, a3) { // 函数体 } ==其他函数表达式== var a = function(a1, a2, a3) { // 函数体 } 以上两个例子在逻辑上等价,其主要的区别是: 前者会在代码执行前被加载到作用域中,而后者则是在代码执行到那一行的时候才会有定义.另一个重要的区别就是:函数声明会给函数一个指定的名字,而函数表达式则是…
注意: 本文章为 <重学js之JavaScript高级程序设计>系列第五章[JavaScript引用类型]. 关于<重学js之JavaScript高级程序设计>是重新回顾js基础的学习. 1. 什么是面向对象 面向对象的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是,再前面提到过.ES中没有类的概念,因此它的对象也与基于类的语言中的对象有所不同. 对象的定义:'无序属性的集合,其属性可以包含基本值.对象或者函数.' 严格来讲,这就相当…
原文:从头开始学JavaScript (十二)--Array类型 一.数组的创建 注:ECMAscript数组的每一项都可以保存任何类型的数据 1.1Array构造函数 var colors = new Array(); 如果预先知道数组要保存的项目数量,也可以给构造函数传递该数量: var colors = new Array(20); 也可以向构造函数传递数组中应该包含的项: var colors = new Array("red", "blue", "…
原文:从头开始学JavaScript (八)--变量 一.变量分类: 基本类型值:null.undefined.number.string.Boolean: 引用类型值:保存在内存中的对象,如:Object / Array / Function / Date / RegExp / Error / Map / Set … 二.属性 二者的定义方式是类似的:创建一个变量并为其赋值. 2.1基本类型值不能添加删除属性 2.2引用类型的属性可以动态添加删除属性 例如: <script type="…