postal-code-jp

0.2.5 • Public • Published

postal-code-jp

郵便番号から、住所を検索できるモジュールです。
郵便番号データのソースは郵便事業株式会社(旧郵政省)提供のデータを使用しています。

npm version Build Status codecov.io Dependency Status

インストール方法

下記のコマンドでインストールできます。

npm install postal-code-jp

基本的な使用方法

郵便番号から、住所の情報を返します。

import AddressResolver from 'postal-code-jp';
 
const resolver = new AddressResolver();
 
resolver.find('0010933').then((address) => {
  console.log(address.prefecture); // 都道府県
  console.log(address.city); // 市区町村名
  console.log(address.area); // 町域名
  console.log(address.street); // 番地
});

検索結果のキャッシュ

キャッシュに利用するアダプタを変えることで、独自のキャッシュ処理に切り替えることができます。
デフォルトでは、MemoryCacheAdapterを使用して、メモリにキャッシュします。

import AddressResolver from 'postal-code-jp';
import { cache } from 'postal-code-jp';
 
const memoryAdapter = new cache.MemoryCacheAdapter();
const resolver = new AddressResolver(memoryAdapter);
 
resolver.find('0010933').then((address) => {
  console.log(address.prefecture); // 都道府県
  console.log(address.city); // 市区町村名
  console.log(address.area); // 町域名
  console.log(address.street); // 番地
});

独自アダプタの実装

CacheAdapterをサブクラス化して、独自のアダプタを使用できるようになります。
下記のメソッドを実装する必要があります。

  • find(prefix) - 郵便番号の頭3桁を引数に取り、該当する辞書を返します。
  • store(prefix, store) - 郵便番号の頭3桁と、辞書を受け取り、キャッシュします。
import AddressResolver from 'postal-code-jp';
import { cache } from 'postal-code-jp';
 
class CustomAdapter extends cache.CacheAdapter {
  constructor() {
    super();
  }
 
  /**
   * Search the dictionary from the cache
   *
   * @param {string} prefix 
   * @return Promise<Object>
   */
  find(prefix) {
  }
 
  /**
   * Cache the dictionary
   *
   * @param {string} prefix 
   * @param {Object} dict 
   * @return Promise<void>
   */
  store(prefix, dict) {
  }
}
 
const resolver = new AddressResolver(new CustomAdapter());
 
resolver.find('0010933').then((address) => {
  console.log(address.prefecture); // 都道府県
  console.log(address.city); // 市区町村名
  console.log(address.area); // 町域名
  console.log(address.street); // 番地
});

テストの実行

次のコマンドで、テストを実行できます。

npm install
npm run instrument
npm test

Readme

Keywords

none

Package Sidebar

Install

npm i postal-code-jp

Weekly Downloads

14

Version

0.2.5

License

MIT

Last publish

Collaborators

  • holyshared