电子邮件生成器(Javascript)(Email Generator (Javascript))

编程入门 行业动态 更新时间:2024-10-22 10:49:09
电子邮件生成器(Javascript)(Email Generator (Javascript))

我正在尝试创建一个电子邮件生成器(供个人使用),它需要输入名和姓,然后使用我创建的阵列中的域名列表。 从这个网站得到的想法,并调整了一些我需要的东西。

这里是示例代码。

function permutate(form) { var firstlastname = form.firstlastname.value.toLowerCase().trim(); var namesplit = firstlastname.split(" "); var firstname = namesplit[0]; var lastname = namesplit[1]; var domain = ['gmail.com','yahoo.com','hotmail.com','msn.com','outlook.com','live.com','me.com','aol.com','mac.com']; if (firstname==null || firstname==""){ document.getElementById("results").innerHTML= "At least enter a first name to get started!"; return false; } else if (lastname==null || lastname==""){ document.getElementById("results").innerHTML= "Come on!, enter a last name!"; return false; } else {} for (var i=0; i<domain.length;i++) var p1 = firstname + "@" + domain[i] + ","; var p2 = firstname + lastname + "@" + domain[i] + ","; var p3 = firstname + "." + lastname + "@" + domain[i] + ","; var p4 = firstname.charAt(0) + lastname + "@" + domain[i] + ","; var p5 = firstname.charAt(0) + "." + lastname + "@" + domain[i] + ","; var p6 = firstname + lastname.charAt(0) + "@" + domain[i] + ","; var p7 = firstname + "." + lastname.charAt(0) + "@" + domain[i] + ","; var p8 = firstname.charAt(0) + lastname.charAt(0) + "@" + domain[i] + ","; var p9 = firstname + "_" + lastname + "@" + domain[i] + ","; var p10 = firstname.charAt(0) + "_" + lastname + "@" + domain[i] + ","; var p11 = lastname + firstname + "@" + domain[i] + ","; var p12 = lastname + "." + firstname + "@" + domain[i] + ","; var p13 = lastname + firstname.charAt(0) + "@" + domain[i] + ","; var p14 = lastname + "." + firstname.charAt(0) + "@" + domain[i]; var addresses= p1 + p2 + p3 + p4 + p5 + p6 + p7 + p8 + p9 + p10 + p11 + p12 + p13 + p14; document.getElementById("results").innerHTML= addresses; }

结果只会打印总是“mac.com”的数组上的最后一个值,因此它将是“vb @ mac.com,vb @ mac.com,vb @ mac.com ...”

我在想它会显示所有可能的组合

vb@gmail.com,v.b@gmail.com,vb@gmail.com... vb@yahoo.com,v.b@yahoo.com,vb@yahoo.com... vb@hotmail.com,v.b@hotmail.com,vb@hotmail.com...

等等..

我是否正确地做,或者有什么我需要添加或可以完成?

当我刚刚学习编码时,我一直在抨击我的头脑,并需要专业人士的指导。

我正在考虑这么做,但我想我会有一个很长的代码。

firstname + "@" + "gmail.com" + ","; firstname + lastname + "@" + "yahoo.com" + ","

编辑:再次从头开始,并将根据下面的评论采用不同的方法。

I'm trying to create an email generator (for personal use) which needs an input of first and lastname then uses a list of domain names in an array I created. Got the idea from this site and tweaked it a bit for what I am needing.

Here's the sample code.

function permutate(form) { var firstlastname = form.firstlastname.value.toLowerCase().trim(); var namesplit = firstlastname.split(" "); var firstname = namesplit[0]; var lastname = namesplit[1]; var domain = ['gmail.com','yahoo.com','hotmail.com','msn.com','outlook.com','live.com','me.com','aol.com','mac.com']; if (firstname==null || firstname==""){ document.getElementById("results").innerHTML= "At least enter a first name to get started!"; return false; } else if (lastname==null || lastname==""){ document.getElementById("results").innerHTML= "Come on!, enter a last name!"; return false; } else {} for (var i=0; i<domain.length;i++) var p1 = firstname + "@" + domain[i] + ","; var p2 = firstname + lastname + "@" + domain[i] + ","; var p3 = firstname + "." + lastname + "@" + domain[i] + ","; var p4 = firstname.charAt(0) + lastname + "@" + domain[i] + ","; var p5 = firstname.charAt(0) + "." + lastname + "@" + domain[i] + ","; var p6 = firstname + lastname.charAt(0) + "@" + domain[i] + ","; var p7 = firstname + "." + lastname.charAt(0) + "@" + domain[i] + ","; var p8 = firstname.charAt(0) + lastname.charAt(0) + "@" + domain[i] + ","; var p9 = firstname + "_" + lastname + "@" + domain[i] + ","; var p10 = firstname.charAt(0) + "_" + lastname + "@" + domain[i] + ","; var p11 = lastname + firstname + "@" + domain[i] + ","; var p12 = lastname + "." + firstname + "@" + domain[i] + ","; var p13 = lastname + firstname.charAt(0) + "@" + domain[i] + ","; var p14 = lastname + "." + firstname.charAt(0) + "@" + domain[i]; var addresses= p1 + p2 + p3 + p4 + p5 + p6 + p7 + p8 + p9 + p10 + p11 + p12 + p13 + p14; document.getElementById("results").innerHTML= addresses; }

the result would just print the last value on the array which is always "mac.com" so it would be "vb@mac.com,v.b@mac.com,vb@mac.com..."

I was thinking that it would display all possible combinations like

vb@gmail.com,v.b@gmail.com,vb@gmail.com... vb@yahoo.com,v.b@yahoo.com,vb@yahoo.com... vb@hotmail.com,v.b@hotmail.com,vb@hotmail.com...

etc..

Am I doing it correctly, or is there something I need to add or can it be done?

I've been banging my head as I just recently learned coding and would need guidance from the pros here.

I was thinking of doing it the long way but I think I would have a very long code.

firstname + "@" + "gmail.com" + ","; firstname + lastname + "@" + "yahoo.com" + ","

Edit : started from scratch again and will proceed on a different approach based on the comments below.

最满意答案

我试了一下,得到了这个结果 。 你可以在这里看到代码:

HTML:

<form name="names"> <input type="text" id="box1" name="firstlastname" placeholder="Luke Skywalker"><br> <br> <input type="submit" id="button-make" value="Make Variations" onClick="permutate(this.form);return false;"> </form> <input type="submit" id="button-reset" value="Reset" onClick="reset('results');return false;"> <div id="results"></div>

CSS:

#form { margin-top: 20px; } input[type] { font-size: 25px; font-family: arial; } #box1 { width: 317px; padding: 10px 12px; margin-bottom: 10px; border: 1px solid rgb(200, 200, 200); border-top-color: rgb(100, 100, 100); border-radius: 5px; color: #5A5A5A; } #button-reset { position: relative; display: inline-block; } #button-make, #button-reset { float: left; } #button-reset { margin: 0 0 0 10px; } #results { position: relative; height: 200px; display: block; overflow: auto; margin-top: 45px; padding: 15px; border: 1px solid rgb(200, 200, 200); /*border-bottom: 1px solid rgb(200,200,200);*/ background: rgb(245, 245, 245); color: rgb(50, 50, 50); font-size: 20px; line-height: 36px; font-family: arial; }

JavaScript的:

function permutate(form) { var firstlastname = form.firstlastname.value.toLowerCase().trim(); var namesplit = firstlastname.split(" "); var firstname = namesplit[0]; var lastname = namesplit[1]; var arr = []; var domain = ['gmail.com', 'yahoo.com', 'hotmail.com', 'msn.com', 'outlook.com', 'live.com', 'me.com', 'aol.com', 'mac.com']; if (firstname == null || firstname == "") { document.getElementById("results").innerHTML = "At least enter a first name to get started!"; return false; } else if (lastname == null || lastname == "") { document.getElementById("results").innerHTML = "Come on!, enter a last name!"; return false; } else { for (var i = 0; i < domain.length; i = i + 1) { var p1 = firstname + "@" + domain[i] + ","; var p2 = firstname + lastname + "@" + domain[i] + ","; var p3 = firstname + "." + lastname + "@" + domain[i] + ","; var p4 = firstname.charAt(0) + lastname + "@" + domain[i] + ","; var p5 = firstname.charAt(0) + "." + lastname + "@" + domain[i] + ","; var p6 = firstname + lastname.charAt(0) + "@" + domain[i] + ","; var p7 = firstname + "." + lastname.charAt(0) + "@" + domain[i] + ","; var p8 = firstname.charAt(0) + lastname.charAt(0) + "@" + domain[i] + ","; var p9 = firstname + "_" + lastname + "@" + domain[i] + ","; var p10 = firstname.charAt(0) + "_" + lastname + "@" + domain[i] + ","; var p11 = lastname + firstname + "@" + domain[i] + ","; var p12 = lastname + "." + firstname + "@" + domain[i] + ","; var p13 = lastname + firstname.charAt(0) + "@" + domain[i] + ","; var p14 = lastname + "." + firstname.charAt(0) + "@" + domain[i]; var addresses = p1 + " " + p2 + " " + p3 + " " + p4 + " " + p5 + " " + p6 + " " + p7 + " " + p8 + " " + p9 + " " + p10 + " " + p11 + " " + p12 + " " + p13 + " " + p14; arr.push(addresses) } } var innertext = document.getElementById("results"); innertext.innerHTML = arr; }

我改变了其他部分的{}和if循环,并添加了一个包含结果的数组。 然后我使用push函数来填充我的数组,最后一步是将innerHTML设置为数组的内容

I tried a little bit around and got this as result. You can see the code here:

html:

<form name="names"> <input type="text" id="box1" name="firstlastname" placeholder="Luke Skywalker"><br> <br> <input type="submit" id="button-make" value="Make Variations" onClick="permutate(this.form);return false;"> </form> <input type="submit" id="button-reset" value="Reset" onClick="reset('results');return false;"> <div id="results"></div>

css:

#form { margin-top: 20px; } input[type] { font-size: 25px; font-family: arial; } #box1 { width: 317px; padding: 10px 12px; margin-bottom: 10px; border: 1px solid rgb(200, 200, 200); border-top-color: rgb(100, 100, 100); border-radius: 5px; color: #5A5A5A; } #button-reset { position: relative; display: inline-block; } #button-make, #button-reset { float: left; } #button-reset { margin: 0 0 0 10px; } #results { position: relative; height: 200px; display: block; overflow: auto; margin-top: 45px; padding: 15px; border: 1px solid rgb(200, 200, 200); /*border-bottom: 1px solid rgb(200,200,200);*/ background: rgb(245, 245, 245); color: rgb(50, 50, 50); font-size: 20px; line-height: 36px; font-family: arial; }

javascript:

function permutate(form) { var firstlastname = form.firstlastname.value.toLowerCase().trim(); var namesplit = firstlastname.split(" "); var firstname = namesplit[0]; var lastname = namesplit[1]; var arr = []; var domain = ['gmail.com', 'yahoo.com', 'hotmail.com', 'msn.com', 'outlook.com', 'live.com', 'me.com', 'aol.com', 'mac.com']; if (firstname == null || firstname == "") { document.getElementById("results").innerHTML = "At least enter a first name to get started!"; return false; } else if (lastname == null || lastname == "") { document.getElementById("results").innerHTML = "Come on!, enter a last name!"; return false; } else { for (var i = 0; i < domain.length; i = i + 1) { var p1 = firstname + "@" + domain[i] + ","; var p2 = firstname + lastname + "@" + domain[i] + ","; var p3 = firstname + "." + lastname + "@" + domain[i] + ","; var p4 = firstname.charAt(0) + lastname + "@" + domain[i] + ","; var p5 = firstname.charAt(0) + "." + lastname + "@" + domain[i] + ","; var p6 = firstname + lastname.charAt(0) + "@" + domain[i] + ","; var p7 = firstname + "." + lastname.charAt(0) + "@" + domain[i] + ","; var p8 = firstname.charAt(0) + lastname.charAt(0) + "@" + domain[i] + ","; var p9 = firstname + "_" + lastname + "@" + domain[i] + ","; var p10 = firstname.charAt(0) + "_" + lastname + "@" + domain[i] + ","; var p11 = lastname + firstname + "@" + domain[i] + ","; var p12 = lastname + "." + firstname + "@" + domain[i] + ","; var p13 = lastname + firstname.charAt(0) + "@" + domain[i] + ","; var p14 = lastname + "." + firstname.charAt(0) + "@" + domain[i]; var addresses = p1 + " " + p2 + " " + p3 + " " + p4 + " " + p5 + " " + p6 + " " + p7 + " " + p8 + " " + p9 + " " + p10 + " " + p11 + " " + p12 + " " + p13 + " " + p14; arr.push(addresses) } } var innertext = document.getElementById("results"); innertext.innerHTML = arr; }

I changed the {} for else part and the if loop and added the an array which holds the results. Then I used the push function to fill my array and the last step is to set the innerHTML to the content of the array

更多推荐

本文发布于:2023-08-05 11:08:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1431164.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:生成器   电子邮件   Javascript   Email   Generator

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!