javascript - Javascript 语法 - 声明对象
问题描述
我是新手。有人可以帮我解释一下这个语法吗?
routes = {
"GET" : {
"/info": (req,res) => {
res.writeHead(httpStatus.OK, {"Content-Type": "text/html"})
res.end("Welcome to the Info page")
}
},
"POST" : {}
};
稍后在此语句中调用路由对象
if (routes[req.method][req.url]) {
routes[req.method][req.url](req,res);
看起来路由对象有一个键值对,那么值有另一个键值对?检查“if (routes[req.method][req.url])”的 if 语句是什么?
解决方案
Routes 是一个object
,其中您有特定 http 方法的路由。例如,具有带有两个参数routes["GET"]["/info"]
的 es6箭头函数req, res
的值: .
稍后在此语句中调用路由对象
您的代码正在检查对象中是否存在请求方法和请求urlroutes
的属性,例如,如果有人/info
使用该方法请求,则将使用参数调用GET
回调函数和,这是您的路由参数。routes["GET"]["/info"]
req
res
推荐阅读
- c# - JavaScriptSerializer C# 中的 Json 序列化
- hive - 如何使用 HIVE 将多行添加到单个列
- java - 如何将字段从正文添加到条件
- ios - Xcode 13.1 + MacOS Monterey (12.0.1) + M1 芯片 (8gb) + 构建时间 + 系统挂起
- react-native - 为什么我总是要在 expo 版本之间切换
- javascript - 在新选项卡上保留状态,但不刷新页面
- java - Java 线程安全问题
- python - NumPy 通过 astype 转换二维数组中的混合数据类型
- django - django + restframework如何通过继承类实现参数接口
- java - 我的 android studio 代码构建成功但输出应用程序崩溃