网站首页 > 基础教程 正文
之前我们讲解了数组的填充方法fill函数,fill函数是对当前的数组进行填充且返回值为当前的数组对象,from和fill相类似也可以对数组进行填充,但是和fill不同的是form的返回值是一个新的数组对象且不会修改原始数组。form函数也可以接收3个参数第一个参数是需要根据进行构造的对象,第二个参数是一个方法返回值为新数组的值,第三个参数为第二个参数的this对象。
构造规则:
当只有参数1的时候根据传入的对象是否具有length属性进行处理,没有此属性直接返回一个空的数组,如果有此属性对对象的每一个属性进行遍历(自己的或者是原型链上的),对于属性名为可以转换为数值的字符串且小于对象长度的设置数组对应位置的值,对于没有匹配的位置设置为undefined。
当有第一个参数和第二个参数根据第二个参数运行的返回值组合成数组类似于map函数。
下面我们看看样例程序
<!DOCTYPE html>
<html>
<head>
<title>JavaScript form的使用</title>
<meta charset="utf-8">
</head>
<body>
<textarea id="value" style="width: 400px;height: 300px;"></textarea>
</body>
<script>
let dom =document.getElementById("value");
let str=[];
let data={"3":888}
let a=Object.create(data);
a.length=4;
a.name="kuikui",
a["0"]=4;
a["6"]=666;
str.push(`the a data is ${Array.from(a)}`);
let b=[1,2,3,4,5,6,7,8];
str.push(`the b data is ${Array.from(b)}`);
let c=new Set();
c.add(1);
c.add(5);
str.push(`the c data is ${Array.from(c)}`);
let d =new Array(8);
let i=0;
str.push(`the d data is ${Array.from(d,()=>{
return (i++)>4;
})}`);
let e="Hello,world";
str.push(`the e data is ${Array.from(e)}`);
dom.value=str.join("\n");
</script>
</html>
第一个转换的对象是有原型属性和自身属性且有length属性的对象。
第二个转换对象是根据已有的数组转换为新的数组。
第三个转换的对象是集合对象。
第四个对象是数组对象但是使用了第二个参数。
第五个对象是一个字符串对象。
下面是程序运行的结果:
猜你喜欢
- 2024-10-12 王者编程大赛之三—最大价值(01背包)
- 2024-10-12 numpy通过形状或值创建ndarray numpy改变形状
- 2024-10-12 NumPy常用的方法汇总 numpy的简单例子
- 2024-10-12 PHP桶排序:高效处理大数据集的算法解析与实现
- 2024-10-12 JavaScript ES6 - 数组扩展 javascript脚本文件的扩展名为
- 2024-10-12 数据的增强 数据增强技术
- 2024-10-12 8个有用的JavaScript技巧 excel打印技巧8个必备excel打印技巧
- 2024-10-12 scala 使用指南,降低新手入门难度
- 2024-10-12 常用的JavaScript代码技巧 (二)布尔、数组
- 2024-10-12 Redis应用-限流 redis 限流
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)