やり方
意味から単語を探す
英語の語や語句を意味に含む、よく使う日本語の単語を`findByMeaning`で探し、すでに持っている単語は`searchMeanings`で探します。
意味から単語を探す
findByMeaningは、渡した英語の語や語句を意味にそっくり含む、よく使う単語を探します。訳語にwaterという語があれば一致し、watermelonは一致しません。to、the、a、ofのように、どの訳語にも出てくる語は検索文から除くので、walkは「to walk」を見つけます。
import {findByMeaning} from "@johnmorrisdotca/jisho/words";
const found=await findByMeaning("water",{limit:5});
console.log(found.map((one)=>`${one.written} ${one.meaning}`));
console.log((await findByMeaning("go out",{limit:3})).map((one)=>one.written));[
'水 water (esp. cool or cold); fluid (esp. in an animal tissue)',
'水分 water, liquid, fluid',
"水上 on the water, aquatic; waterside, water's edge",
'注ぐ to pour (into); to sprinkle on (from above)',
'お水 water, (drinking) water, (glass of) water'
]
[ '出かける', '出歩く', '出る' ]訳語がちょうどその語句である単語が先に来て、そのあとによく使う順に並びます。loadWordsと同じmode、block、allowを受け取ります。索引には、英語の語ごとに、それを含むよく使う単語20語の読みが入っています。JMdictが順位を付けている単語は、訳語に含まれるすべての語と、訳語の中で続く二語の組のすべてで見つかるので、語句でも単語が見つかります。順位のない単語は、辞書のほとんどがそうですが、最初の訳語の語でしか見つかりません。そのため、とてもよく使われる英語の語では、よく使う単語にしか届かず、語形の変化も考慮しません(walkingで「walk」は見つかりません)。limit(指定がなければ10で、20を超えません)は、取得する辞書のチャンクの最大数でもあり、単語一つにつきチャンク一つです。
searchMeanings(words, text)は、すでに持っている単語に対する同じ検索で、何も取得しません。よく使う語の表を検索するのに使えます。
import {loadCommonWords,searchMeanings} from "@johnmorrisdotca/jisho/words";
const common=await loadCommonWords();
console.log(searchMeanings(common,"paper").slice(0,3).map((one)=>one.written));[ '紙', '紙上', 'パー' ]関連
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。