0

ファイルシステムを読み取り、ディレクトリ名を抽出する次のコーヒースクリプトコードがあります。

  fs.readdir "./locales", (err,locales) ->
    EXCLUDE = [ 'dev', 'README.md', 'config.json' ]
    results = __.reject locales, (value, index, list) ->
      return EXCLUDE.indexOf(value) != -1
    languages = {}
    locales = __.each results, (value, index, list) ->
      code =  value
      locale = value.split("-")[0]
      console.log locale
      console.log code
      language = cldr.extractLanguageDisplayNames(locale)[locale]
      console.log language
      languages.locale = language
      #languages.push[{locale: language}]
    console.log languages

コンソール ログ出力:

cs
cs-CZ
čeština
en
en-UK
English
fr
fr-FR
français
pt
pt-PT
português
sk
sk-SK
slovenčina

次のようなjsonファイルを作成する正しい方法は何ですか:

{
  "cs": {
    "locale": "cs",
    "code": "cs-CZ"
  },
  "en": {
    "locale": "en",
    "code": "en-UK"
  },
  "fr": {
    "locale": "fr",
    "code": "fr-FR"
  },
  "pt": {
    "locale": "pt",
    "code": "pt-PT"
  },
  "sk": {
    "locale": "sk",
    "code": "sk-SK"
  }
}

languages上記のオブジェクトを返し、グローバル名前空間で使用できるようにして、アプリケーションで使用できるようにしたいと考えています。

4

1 に答える 1

0

わかりました:

  fs.readdir "./locales", (err,locales) ->
    EXCLUDE = [ 'dev', 'README.md', 'config.json' ]
    languages = {}
    results = __.reject locales, (value, index, list) ->
      return EXCLUDE.indexOf(value) != -1
    locales = __.each results, (value, index, list) ->
      locale = value.split("-")[0]
      language = cldr.extractLanguageDisplayNames(locale)[locale]
      languages[locale] = language
    console.log languages

戻り値

{ cs: 'čeština',
  en: 'English',
  fr: 'français',
  pt: 'português',
  sk: 'slovenčina' }
于 2013-08-14T14:46:34.037 に答える