ラベル「JavaScript」の付いた投稿を表示しています。

二次元配列の初期化【JavaScript】

目次 二次元配列の配列リテラルによる初期化 二次元配列の初期化 二次元配列の文字列からの初期化 二次元配列の配列リテラルによる初期化 const array = [ [1, 2, 0, 0, 0, 0, 0, 0, 0, 0], [3, 0, 0, 0, 0, 0, 0,...

ServiceWorkerを無効化する

はじめに ServiceWorkerと言うこの頃話題の機能がブラウザに追加されました。既存のウェブページではできなかった。スマホのアプリのような機能をブラウザで実現できる素晴らしい機能です。ただし、ユーザの事前承認なしに登録できます。 ServiceWorkerは、スマホアプリの...

アプリのピュニコード対応(日本語ドメイン対応)した

はじめに CopyTabTitleUrl をピュニコード対応しました。ピュニコード対応が予想外に簡単だったので記事にしておきます。 ピュニコード(Punycode)とは 日本語ドメインなどの国際化ドメイン名で使われている文字符号化方式です。詳しくは、次のサイトなどを参照して下さい...

Blogger用の関連記事表示機能:FeedRelatedPosts.js

はじめに Bloggerは、標準で関連記事の機能がありません。LinkWithin, Milliard, GoogleAdSenseなどの外部サービスを利用することで関連記事を表示することができます。ただし、外部サービスを利用すると関連記事が広告ブロッカーにブロックされたり、表示...

n-gramで文字列の類似度を測定する

「 レーベンシュタイン距離で文字列の類似度を高速に取得する 」の続きです。文字列の類似度の別方法としてn-gramについて考慮します。 利点と欠点 レーベンシュタイン距離 処理速度が遅い 一致度が低い場合、高速化しても遅い 位置の異なるキーワードに弱い 完全一致を判定できる 文字...

SyntaxHighlighter.jsからhighlight.jsへ移行しました

はじめに 当ブログでは、ブログ上のソースコードをハイライト表示するライブラリを利用しています。ソースコードには、予約後や文字列、数値など予め予測できる書式が多数存在します。それらを指定の色や書体でハイライト表示することで、ソースコードを読みやす表示しています。 これまで CDN上...

レーベンシュタイン距離で文字列の類似度を高速に取得する

はじめに 文字列の類似度について考えます。具体的には、レーベンシュタイン距離を使用して文字列の類似度を測定します。ただし、レーベンシュタイン距離では、速度が遅いため、高速化します。高速化に伴ってレーベンシュタイン距離とは別物になってしまいますが、類似度としての役割は果たせます。 ...

Bloggerのコメント欄を標準jsなしで返信可能にする

はじめに Bloggerのコメント欄改善です。標準jsを読み込めば、返信(リプライ)できるようにできます。ですが、できるだけスクリプトを使用したくないため、自作して最小限のスクリプトで済ますようにします。 仕様 コメントをJavaScript無効で表示する...

FID(First Input Delay)とはなにか?

はじめに 次の資料にFID(First Input Delay)の詳しい説明があります。ただし、この資料を読んでも筆者には、FIDが何を意味するのか正確にはわかりませんでした。そこで、記事内で紹介されているpolyfillコードやPageSpeedInsightsの表示するFID...

正規表現で使用する文字をエスケープする

はじめに 正規表現でユーザ入力を処理する場合、エスケープ処理が必要になってきます。正規表現を使用した文字列のエスケープについて考えていきます。 MDNのサンプルコード JavaScriptのサンプルコードならば、皆さんおなじみのMDNです。調べてみると、正規...

簡易な英語の分かち書き(形態素解析)

変換 はじめに 簡易な英語の分かち書きです。 調べても巨大なライブラリしか見つからなかったため、作成しました。スペース区切りより頭がいいので、ライブラリ入れるのが嫌なとき用です。 tiny_segmenter.js の英語版みたいなものです。 仕様 英単語を単語単位で分割します ...