繁体   English   中英

如何过滤作为对象数组中对象属性的电子邮件域?

[英]How can I filter an email domain that is a property of an object that is in an array of objects?

我有这个数组

let registers = [Register, Register, Register];

Register {name: 'Ray', email: 'ray@gmail.com', password: '1234'}
Register {name: 'Carl', email: 'carl@gmail.com', password: '4321'}
Register {name: 'Lina', email: 'lina@outlook.com', password: '5678'}

如何使用将@gmail.com 作为电子邮件的对象获取新数组?

Array.filterString.includes Array.filter使用。

Array.filter用一些条件过滤原始数组,其中String.includes提供条件,电子邮件包含一个字符串@gmail.com

 const data = [{ name: 'Ray', email: 'ray@gmail.com', password: '1234' }, { name: 'Carl', email: 'carl@gmail.com', password: '4321' }, { name: 'Lina', email: 'lina@outlook.com', password: '5678' }]; const output = data.filter(node => node.email.includes('@gmail.com'));; console.log(output);

您可以在此处使用过滤器和正则表达式/@gmail\\.com$/来仅获取以gmail.com结尾的元素

在此处输入图片说明

 const data = [ { name: "Ray", email: "ray@gmail.com", password: "1234" }, { name: "Carl", email: "carl@gmail.com", password: "4321" }, { name: "Lina", email: "lina@outlook.com", password: "5678" }, ]; const output = data.filter((o) => o.email.match(/@gmail\\.com$/)); console.log(output);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM