ECMAScript学习笔记(三)

栏目: JavaScript · 发布时间: 6年前

内容简介:JavaScript高级程序设计的第五章。讲解了跟对象相关的东西。创建Object实例的方式有两种,第一种是使用另一种方式是

引用类型

JavaScript高级程序设计的第五章。讲解了跟对象相关的东西。

引用类型的值,是引用类型的一个实例(对象)

Object类型

创建Object实例的方式有两种,第一种是使用 new操作符

var person = new Object();
person.name = "Nicholas";
person.age = 29;

另一种方式是 对象字面量表示法

var person = {
  name: "Nicholas",
  age: 29
}

var person = {}
person.name = "Nicholas";
person.age = 29;

Array类型

ECMAScript的数组,可以为每一项保存任何类型的数据。且数组大小是可以动态调整的。

创建数组的方式1:

var colors = new Array();
var colors = new Array(20);
var colors = new Array("red", "blue", "green");

创建数组的方式2:

var colors = ["red", "blue", "green"];
var colors = [, , , ];
var values = [1, 2, ];

Array的length不是只读的。通过设置该属性,可以从数组的末尾移除项或者添加新项。

另外,如果将一个值放在超出当前数组大小的位置上时,数组就会中心计算length

var colors = ["red", "blue", "green"];
colors[99] = "black";

检测数组

确定一个对象是不是数组:

Array.isArray(value)

转换方法

数组集成的toLocalString()、toString()、valueOf()方法,默认用逗号分隔。我们可以使用join()方法,使用不同的分隔符来构建字符串。

var colors = ["red", "blue", "green"];
colors.join("|");

栈方法

**1.push(), pop():**入栈和出栈

push()方法可以接收任意数量的参数,将他们逐一添加到数组末尾,然后返回最终的数组长度。

而pop()方法,会从数组末尾移除最后一项,并返回移除的项。

var colors = new Array();
var count = colors.push("red", "green");

var item = colors.pop();

队列方法

1.shift()方法能够移除数组的第一个项,并返回被移除的项

于是shift()和push()结合,就可以实现类似于队列一样的方法了。

2.unshift()方法能够在数组的前端添加任何项,并返回最终的数组长度。

于是unshift()和pop()结合,就可以实现类似于队列的方法了。

排序 方法

数组中存在:reverse()和sort()方法,能够用来排序。

1.sort()排序方法,会调用每个数组项的toString()方法,然后再进行排序。

2.sort()方法可以接收一个比较函数作为参数:

function compare(value1, value2) {
  if (value1 < value2) {
    return -1;
  } else if (value1 > value2) {
    return 1;
  } else {
    return 0;
  }
}

操作方法

1.concat()方法可以基于当前数组的所有项,创建一个新数组,然后将接收到的参数添加到这个数组的末尾。

var colors = ["red", "green", "blue"];
var colors2 = colors.concat("yellow", ["black", "brown"]);

2.slice()方法能够基于当前数组中的一或多项创建一个新数组。

var colors = ["red", "green", "blue"];
var colors2 = colors.slice(1);
var colors3 = colors.slice(1, 2);

3.splice()方法:

1)删除:能够删除任意数量的项,只需要指定要删除的第一项和要删除的项数。

2)插入:可以向指定位置插入任意数量的项,只需要提供:起始位置,0(要删除的项数),要插入的项。

3)替换:略

位置方法

ECMAScript 5提供了indexOf()和lastIndexOf()方法。

这两个方法可以传入两个参数:要查找的项,查找起点。

迭代方法

迭代方法接收:每一项上运行的函数,运行该函数的作用域对象

1.every()方法:对数组的每一项运行给定函数,若该数组对每一项都返回true,则返回true

2.filter()方法:对数组的每一项运行给定函数,返回该函数会返回true的项组成的数组。

3.forEach()方法:对数组的每一项运行给定函数,这个方法没有返回值。

4.map()方法:对数组的每一项运行给定函数,返回每次函数调用的结果组成的数组。

5.some()方法:对数组的每一项运行给定函数,如果该函数对任意一项返回true,则返回ture。

var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
var everyResult = numbers.every(function(item, index, array) {
  return (item > 2);
  })

缩小方法

reduce()和refuceRight()方法,会迭代数组的所有项,然后构建一个最终返回的值。

这两个方法接收两个参数:一个在每一项上调用的函数,缩小基础的初始值。

var values = [1, 2, 3, 4, 5];
var sum = values.reduce(function(prev, cur, index, array) {
  return prev + cur;
  });
alert(sum); // 15

以上所述就是小编给大家介绍的《ECMAScript学习笔记(三)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

超越门户

超越门户

吴晨光 / 中国人民大学出版社 / 2015-4-17 / 39.80

在这个PC端影响力下降、人们对手机的依赖与日俱增的时代,这种探索的意义非同寻常,可以说是试图树立新媒体时代的行业标准。 ——陈彤(小米内容投资与运营副总裁、新浪网前总编辑、资深网络媒体人) 我将对此书的阅读,视作对往日岁月的怀念,它提醒我,自己曾 投身于多么富有蓬勃朝气和探索精神的事业。而对这种事业的原则、逻辑和方法的继承和继续学习,对于互联网时代的企业形象塑造 ,同样有融会变通的参考......一起来看看 《超越门户》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具