FreeCodeCamp对象和数组的一些操作方法

1.构造函数创建对象:

构造函数通常为了于其他函数区别开,用大写字母开头。例如:

var Car = function() {
  this.wheels = 4;
  this.engines = 1;
  this.seats = 1;
};

可以理解成构造函数描述了它所创建出来的对象。

2.构造函数的调用:

var myCar =new Car();

3.创建、访问、修改它的属性等,和其它对象一样,如下:

myCar.turoBype="twin";

4.传参的构造函数

var Car = function(wheels, seats, engines) {
  this.wheels = wheels;
  this.seats = seats;
  this.engines = engines;
};

5.创建私有属性和私有方法:

var wheel;使用var关键字来创建变量,替代this创建属性

6.get set函数


7.map方法:可以方便的迭代数组,例如:

var timesFour = myArray.map(function(val){
  return val * 4;
});
map方法会迭代数组中的每一个元素,并根据毁掉函数来处理每一个元素,最后返回一个新数组,但不会改变原始数组。

在我们的例子中,回调函数只有一个参数,即数组中元素的值(val 参数),但其实,你的回调函数也可以支持多个参数,譬如:元素的索引index、原始数组arr

8.reduce方法:用来迭代一个数组,并累计到一个值中。

使用方法时,要传入一个回调函数,回调函数的参数是一个累加器(比如例子中的previousVal和当前值currentVal)

reduce方法有一个可选的第二参数,用来设置累加器的初始值,如果没有在这定义初始值,那么初始值将变成数组中的第一项,而currentVal将从数组的第二项开始。例子中使用了reduce来让数组中的所有值相减

var singleVal = array.reduce(function(previousVal, currentVal) {
  return previousVal - currentVal;
}, 0);

9.filter方法

用来迭代一个数组,并按照给出的条件来过滤出符合的元素

filter方法传入一个回调函数,这个回调函数会携带一个参数,参数为当前迭代的项,val,回调函数返回true的项会保留在数组中,返回false的项会被过滤出数组。

下面的代码展示了使用filter元素来移除数组中值为5的项:我们忽略了第二和第三参数

array = array.filter(function(val) {
  return val !== 5;
});

10.sort方法排序:很容易按照字母顺序或者数字顺序对数组中的元素进行排序

与之前的方法返回一个新数组不同,sort方法会改变原数组,返回被排序后的数组。

sort可以把比较函数当做参数传入,比较函数有返回值,当a小于b,返回一个负数,当a大于b,返回一个正数,相等,返回0

如果没有传入比较函数,它将把值全部转成字符串,并按照字母顺序进行排序。比如:

var array = [1, 12, 21, 2];
array.sort(function(a, b) {
  return a - b;
});

11.reverse翻转数组

var myArray = [1, 2, 3];
myArray.reverse();
// [3, 2, 1]

12.concat合并数组,参数为一个数组,会拼接在原数组的后面,并作为一个新数组返回。比如:

newArray = oldArray.concat(otherArray);

13.split方法分割数组,参数作为分隔的依据符号,例如:按照s字母分割

var array = string.split('s');

14.join方法把数组转换成字符串,按照指定的连接符链接起来,连接符就是要传入的参数。例如:用and连接

var veggies = ["Celery", "Radish", "Carrot", "Potato"];
var salad = veggies.join(" and ");
console.log(salad); // "Celery and Radish and Carrot and Potato"

注意'and'前后都有空格。

各基础算法集合来自(此链接为转):https://blog.csdn.net/ljxyaly/article/details/77956144

猜你喜欢

转载自blog.csdn.net/wanwanWei/article/details/80952105