GitPedia

Jaco js

Japanese character optimizer for JavaScript

From YusukeHirao·Updated April 29, 2026·View on GitHub·

Japanese Character Optimizer. [[English](README.md) | [日本語](README.ja.md)] The project is written primarily in TypeScript, distributed under the MIT License license, first published in 2014. Key topics include: fullwidth, halfwidth, hiragana, jaco, japanese-language.

Latest release: v4.0.0
March 8, 2022View Changelog →

jaco

Japanese Character Optimizer. [English | 日本語]

NPM version

What is

This module optimize Japanese characters.

Convert to Katakana from Hiragana mutually, or sort list by natural phonetic order, or convert to halfwidth from fullwidth mutually.

functions

  • Convert Hiragana <-> Katakana
  • Convert halfwidth <-> fullwidth
  • Check Hiragana, Katakana, halfwidth, fullwidth, and so on.
  • Sort by natural phonetic order.
    • Supported voiced marks, prolonged sound marks, iteration marks.
  • Has compatible native string object API.

installation

for NodeJS

sh
$ yarn add jaco

Usage

js
// Partial functions import toKatakana from 'jaco/toKatakana'; import toHiragana from 'jaco/toHiragana'; toKatakana('ニホンゴのモジなど'); // => ニホンゴノモジナド toHiragana('ニホンゴのモジなど'); // => にほんごのもじなど
js
// Import all functions import { toKatakana, toHiragana } from 'jaco'; toKatakana('ニホンゴのモジなど'); // => ニホンゴノモジナド toHiragana('ニホンゴのモジなど'); // => にほんごのもじなど

Functions

FunctionArgsDescription
addSemivoicedMarksstr半濁点を追加する
addVoicedMarksstr濁点を追加する
byteSizestr文字列のバイトサイズを返す
combineSoundMarksstr [, convertOnly]濁点・半濁点とひらがな・かたかなを結合させる
convertIterationMarksstr繰り返し記号をかなに置き換える
convertProlongedSoundMarksstr長音符をかなに置き換える
hasSmallLetterstr小書き文字を含むかどうか
hasSurrogatePairstrサロゲートペア文字列を含んでいるかどうか
hasUnpairedSurrogatestrペアになっていないサロゲートコードポイントを含んでいるかどうか
isNumericstr [, negative [, floatingPoint]]数字だけで構成されているかどうか
isOnlystr, characters該当の文字だけで構成されているかどうか
isOnlyHiraganastrひらがなだけで構成されているかどうか
isOnlyKatakanastrカタカナだけで構成されているかどうか
naturalKanaOrdera, b配列の五十音順ソートをするためのソート関数
naturalKanaSortarray配列の五十音順ソートをする
removestr, pattern文字列を取り除く
removeUnpairedSurrogatestrペアになっていないサロゲートコードポイントの削除
removeVoicedMarksstr [, ignoreSingleMark]濁点・半濁点を取り除く
replaceFromMapstr, convMapキーがパターン・値が置換文字列のハッシュマップによって置換する
toBasicLetterstr小書き文字を基底文字に変換する
toHiraganastr [, isCombinate]ひらがなに変換する
toKatakanastr [, toWide]カタカナに変換する
toNarrowstr [, convertJapaneseChars]半角に変換
toNarrowAlphanumericstr英数字を半角に変換
toNarrowJapanesestrカタカナと日本語で使われる記号を半角に変換
toNarrowKatakanastr [, fromHiragana]半角カタカナに変換する
toNarrowSignstr記号を半角に変換
toNarrowSymbolForJapanesestr日本語で使われる記号を半角に変換
toNumericstr [, negative [, floatingPoint]]数字に変換する
toPhoneticKanastrよみの文字に変換する
toWidestr全角に変換
toWideAlphanumericstr英数字を全角に変換
toWideJapanesestrカタカナと日本語で使われる記号を全角に変換
toWideKatakanastr全角カタカナに変換する
toWideSignstr記号を全角に変換
toWideSymbolForJapanesestr日本語で使われる記号を全角に変換

Contributors

Showing top 2 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from YusukeHirao/jaco-js via the GitHub API.Last fetched: 6/25/2026