Vueの計算プロパティの詳細な説明

Vueの計算プロパティの詳細な説明

1. 計算属性とは何ですか? 簡単に言えば、計算された結果が属性に保存されるもので、キャッシュとして考えることができます。

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>タイトル</title>
</head>
<本文>
<div id="アプリ">
    <!-- これは currentTime1() であり、括弧はメソッド呼び出し用であることに注意してください。-->
    <p>現在の時刻1: {{現在の時刻1()}}}</p>
    <!--ここでは currentTime1 は括弧で囲まれておらず、属性を通じて呼び出されます-->
    <p>現在の時刻2: {{現在の時刻2}}</p>
</div>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.min.js"></script>
<スクリプト>
    var vm = 新しい Vue({
        el: "#app",
        データ: {
            メッセージ: 「hello vue!」
        },
        メソッド: {
            currentTime1: 関数() {
                // 現在のタイムスタンプを返します return Date.now();
            }
        },
        計算: {
            /*注: ここには計算プロパティがあり、メソッドと計算メソッドの名前は同じにすることはできません。
                   同じ名前のメソッドのみが呼び出されます*/
            currentTime2: 関数 () {
                このメッセージ;
                // 現在のタイムスタンプを返します return Date.now();
            }
        }
    });
</スクリプト>
</本文>
</html>

実行結果:

ここに画像の説明を挿入

一見すると違いがないように見えるかもしれません。

しかし、よく考えてみると、一方はメソッドであり、もう一方はプロパティです。

以下のように表示されます。

<div id="アプリ">
    <!-- これは currentTime1() であり、括弧はメソッド呼び出し用であることに注意してください。-->
    <p>現在の時刻1: {{現在の時刻1()}}}</p>
    <!--ここでは currentTime1 は括弧で囲まれておらず、属性を通じて呼び出されます-->
    <p>現在の時刻2: {{現在の時刻2}}</p>
</div>

重要なポイント: 属性は値を格納します。新しい値が入力されたときのみ変更されます。それ以外の場合は、キャッシュと同じになります。これを見てみましょう:

ここに画像の説明を挿入

説明すると:

1. 1 と 2 から、一方がメソッドで、もう一方がプロパティであることがわかります。メソッドを使用してプロパティを呼び出すことは絶対にできません。

2. 1 と 3 では、メソッド呼び出しの値が常に変化しているのに対し、属性呼び出しの値は変化していないことがわかります。これはキャッシュ メカニズムと同じです。

3. 3、4、5 から、関数内の値を変更すると、キャッシュ内の値を変更するのと同じになり、値が更新されることがわかります。

要約する

メソッドが呼び出されると、その都度計算を行う必要があります。計算処理があるため、必然的にシステムのオーバーヘッドが発生します。結果が頻繁に変わらない場合はどうなるでしょうか。この時点で、結果をキャッシュすることを検討できます。これは、コンピュータのプロパティを使用して簡単に実行できます。コンピュータ プロパティの主な機能は、システムのオーバーヘッドを節約するために、頻繁に変更されない計算結果をキャッシュすることです。 ----- 分かりましたか、友人たち?

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • Vueは計算プロパティを使用して動的スライダーの作成を完了します
  • Vue の計算プロパティの紹介
  • Vue の計算プロパティ
  • Vue で計算プロパティを使用する際の知識ポイントのまとめ

<<:  Linux 負荷分散 LVS の詳細な理解

>>:  HTML でスクロールバーを使用する際のヒントを共有する

推薦する

CSS transform-originプロパティを理解する

序文最近、花火アニメーションを作成しました。花火が散るアニメーションです。アニメーションの実装中、花...

練習と面接のための Linux シェル スクリプトのヒント 9 つを共有する

予防1) 先頭にインタープリターを追加します: #!/bin/bash 2) 構文のインデントに 4...

LinuxにRocketMQインスタンスをインストールする手順

1. JDKをインストールする1.1 現在の仮想マシン環境にJDKがあるかどうかを確認する rpm ...

インターフェースなしで Centos7 に JDK と Tomcat をデプロイするチュートリアル

1. xshell6をインストールする2. サーバー接続を作成し、ユーザー名とパスワードを入力します...

Nginx ロケーション ディレクティブ URI マッチング ルールの詳細な概要

1. はじめにロケーション命令は、http モジュールのコア構成です。事前に定義された URL マッ...

MySQLトランザクションとMySQLログの詳細な説明

取引特性1. アトミック性: トランザクションの開始後、すべての操作が完了するか、まったく実行されな...

MySQLへのJava接続の基礎となるカプセル化の詳細な説明

この記事では、Java接続MySQLの基礎となるカプセル化コードを参考までに紹介します。具体的な内容...

非常に便利なオープンソース Docker ツール 5 つを強くお勧めします

導入Docker コミュニティは、さまざまなユースケースを処理するのに役立つ多くのオープンソース ツ...

Flex プログラム Firefox で中国語を入力すると文字化けするバグ

Firefox の下位バージョンでは中国語の文字を入力できず、上位バージョンでは文字化けした文字が表...

JavaScript ES 新機能ブロックスコープ

目次1. ブロックスコープとは何ですか? 2. ブロックスコープが必要なのはなぜですか? 3. 関数...

Dockerアーキテクチャ入門

Docker には 3 つの基本概念が含まれています。イメージ: Docker イメージはルート フ...

Nginx ログ出力のリクエスト後パラメータを設定する方法

【序文】当プロジェクトの SMS 機能は、第三者に接続することです。第三者からの元の受信確認要求は ...

DockerコンテナのライフサイクルアーキテクチャとVMとの違いについて詳しく説明します。

コンテナのライフサイクルコンテナランタイムのライフサイクルコンテナは、分離特性を持つプロセスのセット...

フレックスレイアウトにおけるflex-growとflex-shrinkの計算方法の詳しい説明

CSS のFlex(彈性布局)すると、Web ページのレイアウトを柔軟に制御できます。Flex Fl...

vue3.0 でカルーセル コンポーネントをカプセル化する手順

目次1: カプセル化の考え方2. 包装工程3: ドットインジケーター4: 左と右のインジケーター5:...