JSON数组格式转换
let json = {
'0': '白百何',
'1': '李小璐',
'2': '贾乃亮',
length:3
}
这就是一个标准的JSON数组格式,跟普通的JSON对比是在最后多了一个length属性。只要是这种特殊的json格式都可以轻松使用ES6的语法转变成数组。在ES6中绝大部分的Array操作都存在于Array对象里。我们就用Array.from(xxx)来进行转换。我们把上边的JSON代码转换成数组,并打印在控制台。
let json = {
'0': '白百何',
'1': '李小璐',
'2': '贾乃亮',
length:3
}
let arr=Array.from(json);
console.log(arr) // ['白百何', '李小璐', '贾乃亮']
实际开发中这种方法还是比较常用的,毕竟节省了我们代码行数,也让我们的程序更清晰。
Array.of()方法:
它负责把一堆文本或者变量转换成数组。在开发中我们经常拿到了一个类似数组的字符串,需要使用eval来进行转换,eval的效率是很低的,它会拖慢我们的程序。这时候我们就可以使用Array.of方法。
let arr =Array.of(3,4,5,6);
console.log(arr); // [3,4,5,6]
当然它不仅可以转换数字,字符串也是可以转换的
let arr =Array.of('天龙八部','神雕侠侣','金庸');
console.log(arr); // ['天龙八部','神雕侠侣','金庸']
find( )实例方法:
所谓的实例方法就是并不是以Array对象开始的,而是必须有一个已经存在的数组,然后使用的方法,这就是实例方法。这里的find方法是从数组中查找。在find方法中我们需要传入一个匿名函数,函数需要传入三个参数:
value:表示当前查找的值。
index:表示当前查找的数组索引。
arr:表示当前数组。
在函数中如果找到符合条件的数组元素就进行return,并停止查找。
let arr=[1,2,3,4,5,6,7,8,9];
console.log(arr.find(function(value,index,arr){
return value > 5;
}))
控制台输出了6,说明找到了符合条件的值,并进行返回了,如果找不到会显示undefined。