![uni-app](https://web-assets.dcloud.net.cn/unidoc/zh/logo-en-D.png)
![uni-app](https://web-assets.dcloud.net.cn/unidoc/zh/logo-en.png)
English
Set 对象是值的集合,你可以按照插入的顺序迭代它的元素。Set 中的元素只会出现一次,即 Set 中的元素是唯一的。
返回 Set 对象中(唯一的)元素的个数。
Return value
返回 Set 对象中(唯一的)元素的个数。
const set1 = new Set<Any>();
set1.add(42);
set1.add('forty two');
set1.add('forty two');
console.log(set1.size);
// expected output: 2
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | x |
如果 Set 对象中没有具有相同值的元素,则 add() 方法将插入一个具有指定值的新元素到 Set 对象中。
Parameters
name | type | required | description |
---|---|---|---|
value | T | YES | 要添加到 Set 对象的元素的值。 |
Return value
Type | description |
---|---|
this | Set 对象本身。 |
const set1 = new Set<number>();
set1.add(42);
set1.add(42);
set1.add(13);
set1.forEach((item)=>{
console.log(item);
// expected output: 42
// expected output: 13
})
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | x |
移除 Set 对象中所有元素。
Return value
Type |
---|
void |
const set1 = new Set<any>();
set1.add(1);
set1.add('foo');
console.log(set1.size);
// expected output: 2
set1.clear();
console.log(set1.size);
// expected output: 0
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | x |
从 Set 对象中删除指定的值(如果该值在 Set 中)。
Parameters
name | type | required | description |
---|---|---|---|
value | T | YES | 要从 Set 中移除的值。 |
Return value
Type | description |
---|---|
boolean | 成功删除返回 true,否则返回 false。 |
const map1 = new Map<string,string>();
map1.set('bar', 'foo');
console.log(map1.delete('bar'));
// expected result: true
// (true indicates successful removal)
console.log(map1.has('bar'));
// expected result: false
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | 3.9.0 |
对 Set 对象中的每个值按插入顺序执行一次提供的函数。
Parameters
name | type | required | description |
---|---|---|---|
callbackfn | (value : T, value2 : T, set : Set<T>) => void | YES | 为集合中每个元素执行的回调函数,该函数接收三个参数:value、key: Set 中正在处理的当前元素。因为 Set 中没有键,所以 value 会被共同传递给这两个参数。set: 调用 forEach() 的 Set 对象。 |
thisArg | any | NO | 值在执行 callbackFn 时作为 this 使用。 |
Return value
Type |
---|
void |
const set1 = new Set<number>([42, 13]);
set1.forEach((item)=>{
console.log(item);
// expected output: 42
// expected output: 13
})
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | x |
返回一个布尔值来指示对应的值是否存在于 Set 对象中。
Parameters
name | type | required | description |
---|---|---|---|
value | T | YES | 要测试是否存在于 Set 对象中的值。 |
Return value
Type | description |
---|---|
boolean | 如果 Set 对象中存在具有指定值的元素,则返回 true;否则返回 false。 |
const set1 = new Set<number>([1, 2, 3, 4, 5]);
console.log(set1.has(1));
// expected output: true
console.log(set1.has(5));
// expected output: true
console.log(set1.has(6));
// expected output: false
Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
---|---|---|---|---|---|
4.4 | √ | 3.9.0 | 9.0 | √ | x |