首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >normalizePort()函数在Nodejs中做什么?

normalizePort()函数在Nodejs中做什么?
EN

Stack Overflow用户
提问于 2019-05-05 04:37:39
回答 4查看 9K关注 0票数 12

我正在浏览这个答案,然后我看到了这一行代码:

代码语言:javascript
运行
复制
var port = normalizePort(process.env.PORT || '4300');

好呀

代码语言:javascript
运行
复制
var port = (process.env.PORT || '4300');

从这个博客中有一个解释:

normalizePort(val)函数简单地将端口规范化为数字、字符串或false。

我还是不明白。然后,我检查一下什么是标准化的这里。我有一些想法,但我还是不明白。

normalizePort()函数的用途是什么?

如果我们不使用它会发生什么?

(举个例子可以帮助我理解)谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-05-05 04:59:09

normalizePort函数是在特快发生器中引入的,它是快递团队的样板。

从生成器代码:

代码语言:javascript
运行
复制
/**
 * Normalize a port into a number, string, or false.
 */
function normalizePort(val) {
  var port = parseInt(val, 10);

  if (isNaN(port)) {
    // named pipe
    return val;
  }

  if (port >= 0) {
    // port number
    return port;
  }

  return false;
}

解释:这个函数是一个安全栏杆,以确保所提供的端口是number,如果不是数字,则是string,如果有其他的设置,则将其设置为false。

如果您自己向环境变量提供端口,并确保端口总是通过某种配置(这是对您的问题的答案),那么您就不需要normalizePort函数了:

好呀 var端口= (process.env.PORT = '4300');

票数 18
EN

Stack Overflow用户

发布于 2019-05-05 04:50:12

来自快递生成器的来源

代码语言:javascript
运行
复制
function normalizePort(val) {
  var port = parseInt(val, 10);

  if (isNaN(port)) {
    // named pipe
    return val;
  }

  if (port >= 0) {
    // port number
    return port;
  }

  return false;
}
  1. 执行parseInt,这实际上是将值转换为整数,如果可能的话。
  2. 检查值是否为-a-号。
  3. 检查是否为有效端口值。

如果您提供代码上的值,则不需要该函数。

票数 2
EN

Stack Overflow用户

发布于 2019-05-05 04:50:33

以下是normalizePort()所做的工作:

代码语言:javascript
运行
复制
/**
 * Normalize a port into a number, string, or false.
 */

function normalizePort(val) {
  var port = parseInt(val, 10);

  if (isNaN(port)) {
    // named pipe
    return val;
  }

  if (port >= 0) {
    // port number
    return port;
  }

  return false;
}

基本上,在大多数情况下,您希望端口是一个数字,而不是一个字符串。但是,在某些情况下,您可能希望传递一个非数字字符串,例如命名管道、套接字等等。这只是将解析为数字的字符串转换为数字,而不使用常规字符串。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55988881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档