-
字符串方法
-
对象方法
-
接下来我们一一进行讲解。
=====================================================================
迭代(遍历)方法:forEach()
、map()
、filter()
、some()
、every()
;
语法:
array.forEach(function(currentValue, index, arr))
-
currentValue:数组当前项的值
-
index:数组当前项的索引
-
arr:数组对象本身
如下面的例子:有一个数组,现在我们想要得到这个数组的每一个元素和索引号,并且得到该数组和该数组中元素之和,我们可以采用如下方法:
var arr = [1,2,3,4]
var sum = 0;
arr.forEach(function(value,index,array){
console.log(‘数组元素为:’+value);
console.log(‘每个数组元素的索引为:’+index);
console.log(‘数组元素为:’+array);
sum += value;
})
console.log(‘数组元素的和为:’+sum);
打印的结果为:
filter()
方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素,主要用于筛选数组它直接返回一个新数组。
语法:
array.filter(function(currentValue, index, arr))
-
currentValue: 数组当前项的值
-
index:数组当前项的索引
-
arr:数组对象本身
举例说明:
返回一个数组中大于15的新数组。
var arr = [13,22,33,4,7,8,16]
var newArr = arr.filter(function(value,index,array){
return value >= 15;
})
console.log(newArr);
打印结果为:
some()
方法用于检测数组中的元素是否满足指定条件. 即查找数组中是否有满足条件的元素 。它返回值是布尔值, 如果查找到这个元素, 就返回true
, 如果查找不到就返回false
。如果找到第一个满足条件的元素,则终止循环. 不在继续查找。
语法:
array.some(function(currentValue, index, arr))
-
currentValue: 数组当前项的值
-
index:数组当前项的索引
-
arr:数组对象本身
例如,判断一个数组中是否有大于20的元素存在。
var arr = [13,22,33,4,7,8,16]
var s = arr.some(function(value){
return value > 20;
})
console.log(s);
打印结果为:
查找一个数组中的某元素是否存在。
var arr1 = [‘x’,‘y’,‘z’,‘m’,‘n’,‘o’]
var x = arr1.some(function(value){
return value = ‘x’;
})
console.log(x);
打印结果为:
======================================================================
trim()
方法会从一个字符串的两端删除空白字符。trim()
方法并不影响原字符串本身,它返回的是一个新的字符串。
真题解析、进阶学习笔记、最新讲解视频、实战项目源码、学习路线大纲
详情关注公中号【编程进阶路】
语法:
str.trim()
例如:现在有一个字符串,想要去掉其两端的空白字符,操作如下:
var str = ’ wh ';
console.log(str);
var str1 = str.trim();
console.log(str1);
打印结果为:
=====================================================================
Object.keys()
用于获取对象自身所有的属性。效果类似 for…in
,返回一个由属性名组成的数组。
语法:
Object.keys(obj)
例如现在有一个对象,我们想要获取它里面的属性名,我们就可以这么操作:
var obj = {
id: 1,
name: ‘王欢’,
sex:‘女’,
age: 18
}
console.log(obj);
var obj1 = Object.keys(obj);
console.log(obj1);
打印的结果为:
如果我们想使用上面得到的数组obj1
中的内容,就可以通过forEach
来遍历获取。
代码为:
后话
对于面试,说几句个人观点。
面试,说到底是一种考试。正如我们一直批判应试教育脱离教育的本质,为了面试学习技术也脱离了技术的初心。但考试对于人才选拔的有效性是毋庸置疑的,几千年来一直如此。除非你有实力向公司证明你足够优秀,否则,还是得乖乖准备面试。这也并不妨碍你在通过面试之后按自己的方式学习。
其实在面试准备阶段,个人的收获是很大的,我也认为这是一种不错的学习方式。首先,面试问题大部分基础而且深入,这些是平时工作的基础。就好像我们之前一直不明白学习语文的意义,但它的意义就在每天的谈话间。
所谓面试造火箭,工作拧螺丝。面试往往有更高的要求,也迫使我们更专心更深入地去学习一些知识,也何尝不是一种好事。