ブックマーク / zenn.dev/ame_x (4)

  • JavaScriptの組み込みAPIのIntlが凄いので紹介してみた。

    はじめに 明けましておめでとうございます。 (一週間遅れ) この記事はJavaScriptの組み込みAPI Intl の紹介と解説です。 Intl とは? MDN から引用すると Intl オブジェクトは、 ECMAScript の国際化 API の名前空間で、言語に依存した文字列の比較、数値の書式化と、日付の書式化を提供します。 Intl オブジェクトは、いくつかのコンストラクターに加え、国際化コンストラクターや他の言語に関する関数に共通する機能へのアクセスを提供します 用はi18nの書式版です。 例を出すより見たほうが早いので実際に機能解説します。 (先に言っておきますが、実はこれバックエンド無しで自然言語処理が出来る優れものです。) 用語解説 localesって何?そもそもnewって何?って人がいるかもしれないので locales https://developer.mozilla.

    JavaScriptの組み込みAPIのIntlが凄いので紹介してみた。
    yug1224
    yug1224 2024/01/08
  • Deno で始めるスクレイピング講座

    初めに 皆様スクレイピングは知っていますか? スクレイピングの定義はこうです。 ウェブスクレイピングとは、ウェブサイトから情報を抽出するコンピュータソフトウェア技術のこと。 通常このようなソフトウェアプログラムは低レベルのHTTPを実装することで、もしくはウェブブラウザを埋め込むことによって、WWWのコンテンツを取得する。 要するにブラウザからFetch等で取得するのではなく、 Python や Cpp でHTTPリクエストを送信し、レスポンスを解析することでサイトの情報を取得する事です。 Python では BeautifulSoup や Requests 、Selenium等が有ります。 レスポンスのHTMLソースをDOM解析して情報を取得することが出来ます。 Deno は言わずと知れた JavaScriptランタイムの大御所です。 PythonよりもDOM解析に優れています。 アプロ

    Deno で始めるスクレイピング講座
    yug1224
    yug1224 2023/10/27
  • ブラウザのみの統合開発環境 StackBlitz の紹介

    初めに この記事は StackBlitz の紹介になります。 初めに言っときます。 StackBlitz は滅茶苦茶凄いです。 現状 JavaScript 系のフレームワーク・ライブラリは勿論。(Next.js / Nuxt.js / jQuery等) Node.js自体も動かせます。 WASM を利用して PythonWordPress も動きます。 (2023/10/24 現在) ブラウザのみで開発が完結します。 疑問 でも貴方は今こう思ったかもしれません。 Q. でもお高いんでしょ? A. 基的には無料です。 Q. 基的? 使えるプロジェクトの数とか制限されてるんでしょ? A. されてません。 無料アカウントで 無制限です そして今こう思ったのではないでしょうか。 [*] でもなんか裏が有るんでしょ? 無料はおかしい。 確かにおかしいです。 サーバーを動かすのにも電力やクラ

    ブラウザのみの統合開発環境 StackBlitz の紹介
    yug1224
    yug1224 2023/10/26
  • Math.random() は内部的に何を行っているのか。

    乱数を生成する有名なメソッドと聞くと、JavaScriptの組み込みメソッドのMath.random()が思いつくと思います これが内部的にどの様な実装になっているのかが気になったので調べて見ました。 Math.random() の実装 どうやら Xorshiftというアルゴリズムを使っている様です。 メモリもあまり使わず高速なんだとか。ただ完全にランダムな訳では無いと。 Xorshiftについて調べると以下のように出ます。 XOR演算のみを使用した疑似乱数生成アルゴリズム 実装のCのソースが乗っていたのでTypeScriptに直してみました。 class Xorshift64State { constructor(public a: number) {} } function xorshift64(state: Xorshift64State): number { let x = sta

    Math.random() は内部的に何を行っているのか。
    yug1224
    yug1224 2023/10/19
  • 1