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 でスクロールバーを使用する際のヒントを共有する

推薦する

hr 水平線スタイルの例コード

コードをコピーコードは次のとおりです。 <hr style="width:490px...

Docker の win ping 失敗コンテナ回避ガイド

win docker-desktopを使ってコンテナ開発に接続し、ネットワーク上で色々試してみたいと...

setup+ref+reactive は vue3 の応答性を実装します

セットアップは、結合された API を記述するために使用されます。テンプレートが使用できるようにする...

JSでよく使われるデータ処理方法

目次DOM処理配列方法要約するDOM処理DOM はドキュメントの構造化された表現を提供し、スクリプト...

PCとモバイルの適応の問題に対する迅速な解決策

Web ページを作成する場合、通常、コンピューターの画面サイズと携帯電話の画面サイズの違いなどの問題...

スライディングカルーセル効果を実現する js

この記事では、スライディングカルーセル効果を実現するためのjsの具体的なコードを参考までに共有します...

VUEのデータプロキシとイベントの詳細な説明

目次Object.defineProperty メソッドのレビューデータブローカーとは何ですか? V...

jsでユーザー登録機能を実装する

この記事の例では、ユーザー登録機能を実装するためのjsの具体的なコードを参考までに共有しています。具...

JavaScript を使用して簡単なアルゴリズムを実行する方法

目次質問1件2つの方法3 実験結果と考察質問1件ご存知のとおり、 Pycharm 、 IDLE 、 ...

Vue スキャフォールディング プロジェクトを作成するための詳細な手順

vue スキャフォールディング -> vue.cli大規模で完全に機能する Vue プロジェク...

Web スライスとは何ですか?

IE8 の新機能 Web スライス (Web スライス) Microsoft は 3 月 20 日...

フラッシュプラグインを使用してPCのカメラを呼び出し、TMLページに埋め込む方法

序文この記事を書いた主な理由は、チームリーダーが、ブラウザを使用してコンピューターのカメラを呼び出し...

繰り返し送信、繰り返し更新、バックオフ防止に関する問題と解決策の分析

1つ。序文<br />この種の質問は、どの専門掲示板でも見かけます。Google で検索...

WeChatアプレットはユーザーログインモジュールサーバーの構築を実装します

サーバーの構築には node.js を選択しました。まだインストールしていない方は、私の他の nod...

htmlはハイパーリンク付きの新しいウィンドウを開き、ウィンドウのプロパティを制御できます。

1. HTMLハイパーリンクによって開かれるウィンドウのサイズコードをコピーコードは次のとおりです...