Salesforce Javascript(四) 展开语法 ...

2023-05-01,,

本篇参考:

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Spread_syntax

Salesforce LWC学习(十六) Validity 在form中的使用浅谈

我们在第十六篇的时候,其中有一段代码是这样的:

let allValid = [...this.template.querySelectorAll('lightning-input')]
.reduce((validSoFar, inputFields) => {
inputFields.reportValidity();
return validSoFar && inputFields.checkValidity();
}, true);

功能大家肯定都知道,获取页面所有的 lightning-input,然后通过reduce函数,判断页面中的输入框是否验证通过。这个是官方lwc的demo,所以抄来即用。总有一些人研究的很细致,问了一个问题 ...是什么意思呢?不用可以不?因为自己的js也贼烂,所以自己也查了一下,做一下知识扩充。

...又称为展开语法,是es6新出的表达式和运算符行列的一个知识点,功能很强大,通常用于函数和数组,将数组表达式或者string在语法层面展开。详细的使用可以查看MDN的官方描述,针对项目中常用在数组中,常用功能描述如下:

1. 数据copy(等同于 object.assign功能)

var arr = [1, 2, 3];
var arr2 = [...arr]; // like arr.slice()
arr2.push(4); // arr2 此时变成 [1, 2, 3, 4]
// arr 不受影响

2. 数据连接(等同于 Array.concat)

var arr1 = [0, 1, 2];
var arr2 = [3, 4, 5];
var arr3 = [...arr1, ...arr2]; //此句话等同于var arr3 = arr1.concat(arr2);

总结:es6中还有很多有用的功能待挖掘,学好lwc,js是关键啊。篇中有错误欢迎指出,有不懂欢迎留言。

Salesforce Javascript(四) 展开语法 ...的相关教程结束。

《Salesforce Javascript(四) 展开语法 ....doc》

下载本文的Word格式文档,以方便收藏与打印。