当前位置: 首页 > wzjs >正文

相亲网站建设ip做网站域名

相亲网站建设,ip做网站域名,云开放平台,顺德门户网站建设公司在现代 Web 应用中,生成强大而安全的密码对于保护用户账户免受未经授权访问至关重要。使用 TypeScript 构建一个随机密码生成器,可以通过混合字母、数字和特殊字符来创建不可预测、复杂的密码,从而显著提升安全性。 我们要构建什么&#xff…

在现代 Web 应用中,生成强大而安全的密码对于保护用户账户免受未经授权访问至关重要。使用 TypeScript 构建一个随机密码生成器,可以通过混合字母、数字和特殊字符来创建不可预测、复杂的密码,从而显著提升安全性。

我们要构建什么?

本项目旨在创建一个随机密码生成器应用,其功能包括:

  • 根据用户指定的长度生成随机密码;
  • 支持包含大写字母、小写字母、数字和特殊字符;
  • 用户可自定义密码的复杂度与长度;
  • 将生成的密码显示在界面上,方便一键复制。

项目预览

这是一个简洁实用的随机密码生成器页面。用户可以指定密码长度,并点击按钮生成符合要求的密码。

HTML 与 CSS 设置

下面是该应用的 HTML 与 CSS 代码,包含了结构与样式,表单允许用户输入所需密码长度并生成密码:

HTML + CSS 示例代码

<html><head><style>body {font-family: Arial, sans-serif;background-color: #f4f7fc;display: flex;justify-content: center;align-items: center;height: 100vh;margin: 0;}.container {text-align: center;padding: 20px;border: 2px solid #ddd;border-radius: 10px;background-color: #fff;width: 300px;box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);}h1 {color: #333;}label {font-size: 16px;}input[type="number"] {width: 80px;padding: 5px;margin: 10px;border-radius: 4px;border: 1px solid #ccc;}button {padding: 10px 20px;background-color: #4caf50;color: white;border: none;border-radius: 4px;cursor: pointer;font-size: 16px;}button:hover {background-color: #45a049;}.password-display input {margin-top: 20px;padding: 10px;width: 80%;font-size: 18px;border-radius: 4px;border: 1px solid #ccc;background-color: #f9f9f9;text-align: center;}</style></head><body><div class="container"><h1>Random Password Generator</h1><label for="passwordLength">Password Length:</label><input type="number" id="passwordLength" value="12" min="8" max="20" /><button id="generateButton">Generate Password</button><div class="password-display"><input type="text" id="password" readonly /></div></div></body>
</html>

说明:

  • HTML 创建了一个表单,包含输入框(指定密码长度)和按钮(生成密码)。
  • CSS 样式设计简洁,包含边框圆角、阴影与响应式居中布局。
  • 用户可设置密码长度(最短 8,最长 20)。
  • 生成的密码会显示在一个只读的输入框中,方便复制。

TypeScript 逻辑

下面的 TypeScript 代码负责密码的生成逻辑,结合用户输入的长度,输出包含多种字符的强密码,并将其显示在输入框中:

TypeScript 示例代码

// 生成指定长度的随机密码
function pass(length: number = 12): string {const char = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_-+=";let password = "";for (let i = 0; i < length; i++) {const ind = Math.floor(Math.random() * char.length);password += char[ind];}return password;
}// 获取按钮、输入框等 DOM 元素
const btn = document.getElementById("generateButton") as HTMLButtonElement;
const inp = document.getElementById("password") as HTMLInputElement;
const passLen = document.getElementById("passwordLength") as HTMLInputElement;// 点击按钮时生成密码
btn.addEventListener("click", () => {let length = parseInt(passLen.value, 10);if (length < 8) length = 8;if (length > 20) length = 20;const password = pass(length);inp.value = password;
});

功能说明:

  • pass 函数根据给定长度生成密码,字符集包含大小写英文字母、数字及特殊字符;
  • generateButton 按钮用于触发密码生成;
  • passwordLength 输入框接收用户的密码长度设置;
  • 密码长度被限制在 8~20 之间;
  • 最终密码会显示在 password 输入框中。

转换为 JavaScript 文件

TypeScript 代码需通过命令行编译为 JavaScript,浏览器才能识别运行。使用以下命令:

npx tsc task.ts
# 或
tsc task.ts

默认情况下,编译后的 task.js 会和 task.ts 保存在同一目录中。

完整代码

这是最终可直接运行的完整 HTML 页面,已嵌入 JavaScript(由 TypeScript 编译而来):

<html><head><style>/* 同前略 */</style></head><body><div class="container"><h1>Random Password Generator</h1><label for="passwordLength">Password Length:</label><input type="number" id="passwordLength" value="12" min="8" max="20" /><button id="generateButton">Generate Password</button><div class="password-display"><input type="text" id="password" readonly /></div></div><script>function pass(length) {if (length === void 0) { length = 12; }var char = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_-+=";var password = "";for (var i = 0; i < length; i++) {var ind = Math.floor(Math.random() * char.length);password += char[ind];}return password;}var btn = document.getElementById("generateButton");var inp = document.getElementById("password");var passLen = document.getElementById("passwordLength");btn.addEventListener("click", function () {var length = parseInt(passLen.value, 10);if (length < 8) length = 8;if (length > 20) length = 20;var password = pass(length);inp.value = password;});</script></body>
</html>

总结

本项目是 TypeScript 实践的一个绝佳入门项目,通过构建一个具备实际用途的密码生成器,你可以掌握 TypeScript 与 DOM 操作、输入验证、基本算法等多项技能,同时还能产出一个功能完备的小工具。

http://www.dtcms.com/wzjs/547333.html

相关文章:

  • wordpress 卡片式主题网络优化师是什么工作
  • 网站大致内容wordpress 阴影
  • 徐州微网站开发公司网站建设需要的技术
  • unity做网站网上的推广
  • 西安做网站的公司报价施工企业样板先行制度
  • 怎么在网站上做图片轮播建设工程标准 免费下载网站
  • 免费追剧网站大全传媒的域名做个什么网站
  • 纳雍网站建设公司做一般的公司网站需要多少钱
  • 做企业网站需要维护费吗广告设计公司怎么样
  • 网站认证怎么做网站制作找云优化
  • 网站建设设计培训班大学网站建设宣传方案
  • 网站建设及外包广州手机网站开发报价
  • 网站开发 哪家好跨境电商怎么推广引流
  • 怎么在百度建立自己的网站服务器租用网站模版
  • 推荐聊城网站建设golang 网站开发 开源
  • 网站关键字排名怎么做哈尔滨门户网站是什么
  • 温州网站建设模板下载免费阿里域名注册查询
  • 怎么做公众号网站铜山徐州网站开发
  • 网站建设出题优化的近义词
  • 做公司网站需要的材料有哪些新开元电销系统
  • 适合大学生做兼职的网站有哪些商城网站入驻系统
  • 设计师服务平台网站中国电信企业邮箱登录入口
  • 国外手机设计网站o2o有哪些电商平台
  • 自动采集网站php源码凡科网站建站后 怎么编辑自己的代码源
  • 网站工信部本案货架网站开发
  • 宁波集团网站建设wordpress 看不到图片
  • 巩义做网站汉狮网络拟定一个物流网站建设方案
  • 阜宁网站建设找哪家好手机百度高级搜索入口在哪里
  • 网页设计与制作教程机械工业出版社百度关键词优化
  • 做网站能赚钱吗知乎python做网站原理