在社会的舞台上一口气解读ChatGPT编程超能力50个实例让小白也能懂同时宣布和平精英免费开启科技软
在这个社会的舞台上,我们将通过十三个章节,50个实例来展示ChatGPT编程超能力的无限潜力。从初学者学习知识到面试准备,基本都覆盖了。在享受ChatGPT提供便利的同时,也要时刻保持学习状态,充实自己的技能。
一、代码生成
ChatGPT可以生成各种Web开发任务的代码,让你的效率倍增!它不仅能生成简洁明了的HTML和CSS代码,还能轻松生成JavaScript函数,甚至数据库查询语句,都能轻松搞定Web开发。
1.1 提示词:
Generate a semantic and accessible HTML and (framework) CSS [UI component] consisting of [component parts]. The [component parts] should be [layout].
举例:
Generate a semantic HTML and Tailwind CSS Contact Support form consisting of the users name, email, issue type, and message. The form elements should be stacked vertically and placed inside a card.
生成结果下面是一个使用语义化HTML和Tailwind CSS构建的“联系支持”表单,包含用户的姓名、电子邮件、问题类型和留言。表单元素垂直堆叠,放置在一个卡片中。
联系支持 在这个表单中,姓名和电子邮件是必填字段,因此可以在输入框中使用required属性。您还可以根据需要自定义CSS样式。
1.2 提示词:
Write a JavaScript function. It accepts [input] and returns [output].
举例:
Write a JavaScript function that accepts a full name as input and returns avatar letters.
生成结果以下是接受全名为输入并返回头像字母的JavaScript函数:
function getAvatarLetters(fullName) {
// 分割全名为名字和姓氏
const names = fullName.trim().split(' ');
let avatar = '';
// 遍历每个名字并将其第一个字符添加到头像中
for (let i = 0; i < names.length; i++) {
avatar += names[i][0];
if (i > 2) {
avatar = avatar.substring(0, 2);
}
}
// 返回头像
return avatar;
}
该函数首先将输入的全名分割成名字和姓氏,然后遍历每个名字并将其第一个字符添加到头像中。如果头像长度大于2,则截断为两个字符。最后,该函数返回头像。
例如,如果输入的是“张三”,则该函数会返回“张”,如果输入的是“张三丰”,则该函数会返回“张三”。
1.3 提示词:
Write an API for fetching the current user's profile information using MongoDB.
举例:
写一个Express.js API来获取当前用户个人资料信息,它应该使用MongoDB。
生成结果以下是一个使用Express.js与MongoDB编写API示例,用以获取当前用户个人资料信息:
const express = require('express');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');
const app = express();
// 连接MongoDB数据库
mongoose.connect(
'mongodb://localhost/myapp',
{ useNewUrlParser: true }
)
.then(() => console.log(Connected to MongoDB))
.catch((err) => console.error(Error connecting to MongoDB: ${err}));
// 创建用户模型
const userSchema = new mongoose.Schema({
name: String,
email: String,
password: String,
});
const User = mongoose.model(User, userSchema);
// 添加请求体解析器(用于处理POST请求)
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
// 定义路由规则,以便获取当前用户个人资料信息
app.get('/api/profile', async (req, res) => {
const userIdFromRequestHeaderOrCookieOrSession =
req.userId;
if (!userIdFromRequestHeaderOrCookieOrSession) return res.status(401).send("Unauthorized");
try {
const userProfileDataFromDatabase =
await User.findById(userIdFromRequestHeaderOrCookieOrSession);
if (!userProfileDataFromDatabase)
return res.status(404).json({ message: "User not found" });
return res.json(userProfileDataFromDatabase);
} catch (errorObjectWithStatusCodeAndMessageInTheProperties{
errorStatusCodeAndMessage } ) {
switch(errorStatusCodeAndMessage.statusCode){
case HTTPStatus.INTERNAL_SERVER_ERROR:{
logServerSideError(errorObjectWithStatusCodeAndMessageInTheProperties.message);
break;
}
default :{
logUnexpectedServerError();
break;
}
}
res.status(errorStatusCodeAndMessage.statusCode).json({ message:error StatusCodeAndMess