【Vue.js】マスタッシュ構文内にJavaScriptを記述しよう【JavaScript】

JavaScript

みなさんこんにちは、現役エンジニアのサメハックです

アパレル企業でトップ販売員を経て
未経験からWebエンジニアに転職し、
現在正社員として5年働いています!

Vue.jsの解説シリーズです。

今回はマスタッシュ構文内にJavaScript式を記述する方法について学んでいきましょう!

駆け出しエンジニアや未経験の方、
また新入社員を指導する先輩社員にとっても
わかりやすいように解説していきます!

この記事を読むと・・・
  • マスタッシュ構文内にJavaScriptを記述することができる
Vue.jsを使いこなそう!

マスタッシュ構文内で関数を使おう

マスタッシュ構文内で関数を使うには以下のように記述します。

構文

{{ 変数.関数() }}

見ての通りですが、通常のJavaScriptと同じような記述方法となります。

Vue.jsのマスタッシュ構文{{}}内はHTMLではなく、
JavaScriptの世界なのでJavaScriptのネイティブな関数が使用できます。

マスタッシュ構文内で三項演算子を使おう!

三項演算子とは

マスタッシュ構文内でJavaScriptを記述する際に
最もよく使用されるのは三項演算子です。

三項演算子とは、if-else文を1行で記述するショートハンドです。

三項演算子の構文はこうです

条件式 ? trueの場合の戻り値 : falseの場合の戻り値;
// numberを宣言
let number = 100
console.log(number == 100 ? "100だよ" : "100やないよ")
// → 【出力結果】100だよ

// 上書き
number = 999
console.log(number == 100 ? "100だよ" : "100やないよ")
// → 【出力結果】100やないよ

三項演算子について復習したい方はこちら!

マスタッシュ構文内で使おう!

①numberを少数第二位まで表示しよう

②先程の例文と同じものをVue.jsで記述しましょう。

See the Pen マスタッシュ構文内にJavaScript式を書こう by samehack (@samehack) on CodePen.

①toFixed関数が適用されて、100.00と表示されました。
固定小数点形式への変換を復習したい方はこちら!

【JavaScript】固定小数点形式に変換しよう!【toFixed】

②numberに100が入っているため、
“100だよ”と表示されました。

試しに、JSタブを選択し、numberの値を変えてみると
“100やないよ”と表示されることがわかります。

注意点

一点だけ注意点があるのですが、
マスタッシュ構文内には単一式のみのJavaScriptしか記述できません。

{{ if(number == 100) {
    return "100だよ"
} else {
    return "100やないよ"
} }}

のような記述はエラーとなります。

まとめ

  • マスタッシュ構文内にはネイティブなJavaScriptの関数が使用できる
  • 三項演算子を用いて表示を切り替えることができる
  • マスタッシュ構文内には単一式のみのJavaScriptしか記述できない

満足いただけたら、1クリックなのでSNSフォローしてもらえると嬉しいです🦈

タイトルとURLをコピーしました