Array.of() 数组创建
Array.of() 将参数中所有值作为元素形成数组。
// (1)先声明 后赋值
var arr = Array.of();
arr[0] = '中国移动';
arr[1] = '中国电信';
arr[2] = '中国石化';
console.log(arr);
// (2)直接声明并赋值
var list = Array.of('中国移动','中国电信','中国石化');
console.log(list);
预览效果
Array.from() 对象 转化为数组(1)
这里的对象 指的是 类数组对象或可迭代对象。
将类数组对象或可迭代对象转化为数组。
Array.from() 对象 转化为数组
//参数含空位
let c = [1,,,3]
console.log(c);
let a = Array.from(c);
console.log(a);
预览效果
类数组对象
一个类数组对象必须含有 length 属性,且元素属性名 必须是 数值或者可转换为数值的字符
var obj = {
0:'elva',
1:'tom',
2:'lili',
length:2
};
console.log(obj);
// 将类数组对象转成 数组对象
var arr = Array.from(obj);
console.log(arr);
预览效果
<ul id="list">
<li>我是列表项</li>
<li>我是列表项</li>
<li>我是列表项</li>
</ul>
<script>
var list = document.querySelector('#list');
var liObj = list.querySelectorAll('li');
console.log(liObj);
// 将类数组对象转成 数组对象
var arr = Array.from(liObj);
console.log(arr);
</script>
预览效果
如果对象中没有length属性,使用Array.from()转不了
var obj = {
0:'小红',
1:'小明',
2:'小芮',
}
var arr = Array.from(obj);
console.log(arr);
预览效果
元素属性名 不为数值且无法转换为数值,返回长度为 length 元素值 为 undefined 的数组
如果对象中属性名 无法转成 为数值 ,使用Array.from()转不了
var obj = {
0:'小红',
1:'小明',
2:'小芮',
length:3
}
var arr = Array.from(obj);
console.log(arr);
预览效果