Set.prototype.delete()
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
Set å®ä¾ç delete() æ¹æ³ä»è¯¥éåä¸å 餿å®å¼ï¼å¦æè¯¥å¼å¨éåä¸ã
å°è¯ä¸ä¸
const set1 = new Set();
set1.add({ x: 10, y: 20 }).add({ x: 20, y: 30 });
// Delete any point with `x > 10`.
set1.forEach((point) => {
if (point.x > 10) {
set1.delete(point);
}
});
console.log(set1.size);
// Expected output: 1
è¯æ³
js
setInstance.delete(value)
åæ°
value-
è¦ä»
Setä¸ç§»é¤çå¼ã
è¿åå¼
æåå é¤è¿å trueï¼å¦åè¿å falseã
示ä¾
>ä½¿ç¨ delete() æ¹æ³
js
const mySet = new Set();
mySet.add("foo");
console.log(mySet.delete("bar")); // è¿å falseï¼ä¸å
å« "bar" è¿ä¸ªå
ç´
console.log(mySet.delete("foo")); // è¿å trueï¼å 餿å
console.log(mySet.has("foo")); // è¿å falseï¼"foo" å·²ç»æåå é¤
ä» Set ä¸å é¤å¯¹è±¡
å 为对象æ¯éè¿å¼ç¨æ¯è¾çï¼æä»¥å¦ææ²¡æå¯¹åå§å¯¹è±¡çå¼ç¨ï¼å°±å¿ é¡»éè¿æ£æ¥åä¸ªå±æ§æ¥å é¤å®ä»¬ã
js
const setObj = new Set(); // å建ä¸ä¸ªæ° set
setObj.add({ x: 10, y: 20 }); // å¨ set 䏿·»å 对象
setObj.add({ x: 20, y: 30 }); // å¨ set 䏿·»å 对象
// å é¤ä»»ä½ 'x > 10' çç¹
setObj.forEach((point) => {
if (point.x > 10) {
setObj.delete(point);
}
});
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-set.prototype.delete> |