Vue.js では、v-for を使うと、配列を HTML のテーブルやリストとして見やすくレンダリングできます。しかし、オブジェクトのキーと値をテーブルとして表示したい場合はどうすればよいのでしょうか。例えば、連絡先の情報を JS のオブジェクトと配列で多数保存していて、連絡先ごとにキーが異なるとします。連絡先1の情報をテーブルで表示したいのですが、v-for はこの用途には向いていないのでしょうか?

例えば、次のような JS のオブジェクトを HTML に変換したいとします:

{
  "name": "Karl",
  "age": 10,
  "school": "NTUST"
}

HTML:

<p>name:Karl</p>
<p>age:10l</p>
<p>school:NTUST </p>

最初は Object.keys と v-for を組み合わせて解決しようとしましたが、とても冗長だと感じました。そこで、この問題を解決できる良い構文を見つけました:

<p v-for="(val, key) in contacts[0]">{{key}}:{{val}}</p>