gpt4 book ai didi

javascript - 验证在 JavaScript 中设置为 JSON 的电子邮件扩展列表

转载 作者:行者123 更新时间:2023-11-30 15:46:20 25 4
gpt4 key购买 nike

我如何验证用户输入的电子邮件并使用 JSON 中的电子邮件扩展名列表检查他们的扩展名?

如果我输入 abc@efg.com,它只会检查 JSON 列表中的电子邮件扩展名,即 @efg.com。

或者一个正则表达式,它只会获取“@”之后的值并忽略之前的任何内容。

[
{
"School": "Ivy Tech Community College",
"Email": "ivytech.edu"
},
{
"School": "Liberty University",
"Email": "liberty.edu"
},
{
"School": "Miami Dade College",
"Email": "mdc.edu"
},
{
"School": "Lone Star College",
"Email": "lonestar.edu"
},
{
"School": "Ashford University",
"Email": "ashford.edu"
}
]

最佳答案

// initial data
var data = '[ {"School":"Ivy Tech Community College","Email":"ivytech.edu"},' + '{"School":"Liberty University","Email":"liberty.edu"},' + '{"School":"Miami Dade College","Email":"mdc.edu"},' + '{"School":"Lone Star College","Email":"lonestar.edu"},' + '{"School":"Ashford University","Email":"ashford.edu"} ]';

// json-ify our data
var jsonData = JSON.parse(data);

// map the values of each JSON 'Email' property from jsonData in an array
var emailsArray = jsonData.map(function (x) { return x.Email; });

// email address for testing
var testEmail = "john@liberty.edu";

// split the email address by the "@" character and use the second part (domain)
if (arrayContains(testEmail.split("@")[1], emailsArray))
{
// this will fire as john@liberty.edu matches liberty.edu in emailsArray
console.log("emailsArray contains domain");
}
else
{
console.log("emailsArray does not contain domain");
}

// function to check if an item is contained in an array
function arrayContains(item, array)
{
return (array.indexOf(item) > -1);
}

完成 JSFiddle 示例 here

注意事项:

  • 您可以忽略前两行代码,因为我猜您是从网络响应中获取 JSON 数据
  • 假设 testEmail 遵循电子邮件地址的格式;您可能需要实现某种验证来验证输入的字符串是真实的电子邮件
  • 我们用 @ 字符拆分 testEmail 并使用 String.prototype.split() < 获取结果的第二部分(它将位于索引 1,因为数组是从零开始的)/li>
  • emailsArray 数组是使用 Array.prototype.map() 函数创建的
  • arrayContains 使用 String.prototype.indexOf() 方法检查 testEmail 是否存在于 emailsArray

我想我已经阐明了示例中每一行代码的作用。您现在可以使用它并根据您自己的要求进行调整——更好的是,改进它。

关于javascript - 验证在 JavaScript 中设置为 JSON 的电子邮件扩展列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40009411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com