小编Ami*_*lar的帖子

在打字稿中使用 Map.get() 方法,返回未定义,而我正在处理未定义

我试图将字母的重复映射到哈希图中,然后返回字符串中的第一个非重复字符。以下是我为此编写的函数:

export const firstNonRepeatedFinder = (aString: string): string | null => {
  const lettersMap: Map<string, number> = new Map<string, number>();

  for (let letter of aString) {
    if (!lettersMap.has(letter)) {
      lettersMap.set(letter, 1);
    } else {
      incrementLetterCount(letter, lettersMap);
    }
  }

  for (let letter of aString) {
    if (lettersMap.get(letter) === 1) return letter;
  }

  return null;

  function incrementLetterCount(
    aLetter: string,
    aLettersHashMap: Map<string, number>
  ): void {
    if (
      aLettersHashMap.has(aLetter) &&
      aLettersHashMap.get(aLetter) !== undefined
    ) {
      aLettersHashMap.set(aLetter, aLettersHashMap.get(aLetter) + 1);
    }
  }
};
Run Code Online (Sandbox Code Playgroud)

然而,在 …

javascript hashmap typescript

5
推荐指数
1
解决办法
1万
查看次数

在 Heroku 上部署的 Rails API 在开发时抛出内部服务器错误 (500)

我在 Heroku 上部署了 Rails API(Rails API 不是使用 创建的rails new <app-name> --api,而是一个 Rails 应用程序,我从中创建了一个 API)。

在 Heroku 上部署时,Rails API 不起作用并抛出内部服务器错误状态 500。

我尝试使用邮递员和浏览器访问我的 API,但我收到内部服务器错误的 JSON 输出。

上述 JSON 响应是发送请求的结果my-app-name.herokuapp.com/api/v1/foods

我应该提到的是,我尝试heroku run rails console查看我的数据库是否正确播种,并且我获得了我应该正确获得的所有数据。

heroku logs --tail在这里,我复制了尝试向上述网址发送请求后的结果:

2019-06-18T19:45:53.619745+00:00 heroku[web.1]: State changed from starting to up
2019-06-18T19:45:55.010890+00:00 app[web.1]: => Booting Puma
2019-06-18T19:45:55.010918+00:00 app[web.1]: => Rails 5.2.3 application starting in production
2019-06-18T19:45:55.010920+00:00 app[web.1]: => Run `rails server -h` for more startup options
2019-06-18T19:45:55.010922+00:00 app[web.1]: Puma starting in single mode... …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku rails-api

1
推荐指数
1
解决办法
611
查看次数