カテゴリ:JavaScript:記事一覧

このカテゴリの記事は、JavaScriptを使ったプログラミングについて、実際にやったことを中心に紹介します。

JavaScriptでプログラムをしていると非同期処理を頻繁に使用します。そのため非同期処理の知識が必要なのですが、知らなくてもコードは組めます。だからあまり気にしていなかったのですが、同じような言葉に並列処理というものがあることに最近気が付きました。そうなると違いが気になってきます。そこで並列処理と非同期処理および同期処理の違いについて、調べてみました。

JavaScriptを学んでいるとコールバックとイベントリスナーという言葉を耳にします。どちらも関数で、メソッドの引数として用いられているので違いが判らず、戸惑ってしまいます。そこで両者の違いを調べてみました。

SharedArrayBufferを使用すると異なるスレッド間で同じメモリ領域を共有することができます。使い方によっては効率の良いアプリケーションを作成できます。しかし脆弱性を指摘されていることから、ブラウザでの使用に制限がかかっています。

仕様書(ECMAScript)上では、JavaScriptは同期/非同期に関係なく、一つのスレッドで動作することになっていて、並列処理を行う機能は定義されていません。しかし現行のブラウザの多くは、Web WorkerというAPIが組み込まれていて、これを利用することで並行処理を実現することができます。この記事は、実際使ってみたら、とても簡単に並列処理できたよというお話です。

ブラウザなら入れ子となったタグをDOMで簡単に取得できます。しかしNode.jsなどのブラウザ以外のJavaScriptや、わざわざDOMに展開するまでもない場合などは、正規表現などでテキストのまま処理したいケースがあります。今回は、その方法を考えてみました。

JavaScriptにはテンプレートリテラルというものがあります。使いこなすとめちゃくちゃ便利なので、この機会に覚えておきましょう。

JavaScriptのreplaceメソッドを使用すると、文字列の一部を置換することができます。このreplaceメソッド内で外部ファイルを参照するなど、非同期メソッドをawaitキーワードで使用したいことがあります。しかしエラーが出て処理が止まってしまいます。どうしてでしょうか?対処方法はあるのでしょうか?

JavaScriptには NaNという値があります。数値に関する値のようですが、少しわかり難い面があります。そこでここでは NaNについて少し掘り下げてみます。

JavaScriptでは計算をするときなど、状況によってはオブジェクトをプリミティブ値に変換します。その際、[Symbol.toPrimitive]を参照します。通常のオブジェクトには[Symbol.toPrimitive]が定義されていません。このようなケースでは、toStringメソッドとvalueOfメソッドが順番に呼び出されます。呼び出される順番は状況により変化しますが、概ね、文字列が必要なときはtoStringが、数値が必要な時はvalueOfが先に呼び出されます。

このカテゴリに記事は、PHPやをJavaScript使ったプログラミングについて、実際にやったことを中心に紹介します。

54は5を4回掛け算したもので、累乗とよびます。そして4回の部分が、マイナスや分数など自然数以外にも範囲を広げたものをべき乗と呼ぶそうです。累乗なら繰り返し掛け算すれば計算できますが、べき乗は難しそうです。そこで、JavaScriptでべき乗を計算する方法をお伝えします。

JavaScriptでは一言で数値チェックと言っても、その前提条件で意味が異なります。そのため、初心者が上級者に質問をしにくい問題でもあります。そこで今回は、JavaScriptでの数値とは何かを含めて、数値チェックの方法をお伝えします。

JavaScriptで割り算の余りを求める演算子は『%』です。右辺または左辺が文字列の場合暗黙的に型変換がおこなわれます。ただし数値に変換できない場合はNaNが演算結果として返ります。

DOM要素のanimateメソッドを使用すると、CSSの@keyframesと同じような感覚で要素のアニメーションを制御できます。JQueryにも同名のメソッドがありますが、今回はWeb Animations API のメソッドについて紹介します。

JavaScriptのCanvasAPIにはtranslateやscaleなどの変換メソッドがあります。しかし変換をリセットするメソッドが存在しません。そこで、変換内容をリセットする方法をお伝えします。

自作のオブジェクトを共有ライブラリとして外部に公開するときなど、他者にオブジェクトを変更してほしくないときもあります。タイプミスが頻繁で、予定にない新規プロパティが増えていて困るという人(僕)もいます。そんなとき、Object.freeze()またはObject.seal()を使用します。

page:9 記事数:299