Upgrade to Pro — share decks privately, control downloads, hide ads and more …

いまどきの JavaScript入門 - ES6/TypeScript/Vue.js

いまどきの JavaScript入門 - ES6/TypeScript/Vue.js

More Decks by たにぐちまこと(ともすた)

Other Decks in Technology

Transcript

  1. <div id="timer"></div> <script> function timer() { var now = new

    Date(); document.getElementById('timer').innerHTML = now.getSeconds() + '秒'; } var timerID = setInterval(timer, 500); </script> <div id="timer"></div> <script> const timer = () => { let now = new Date(); document.getElementById('timer').innerHTML = `${now.getSeconds()}秒'; } let timerID = setInterval(timer, 500); </script>
  2. トランスパイルとは <div id="timer"></div> <script> function timer() { var now =

    new Date(); document.getElementById('timer').innerHTML = now.getSeconds() + '秒'; } var timerID = setInterval(timer, 500); </script> <div id="timer"></div> <script> const timer = () => { let now = new Date(); document.getElementById('timer').innerHTML
  3. トランスパイルとは <div id="timer"></div> <script> function timer() { var now =

    new Date(); document.getElementById('timer').innerHTML = now.getSeconds() + '秒'; } var timerID = setInterval(timer, 500); </script> <div id="timer"></div> <script> const timer = () => { let now = new Date(); document.getElementById('timer').innerHTML
  4. トランスパイルとは <div id="timer"></div> <script> function timer() { var now =

    new Date(); document.getElementById('timer').innerHTML = now.getSeconds() + '秒'; } var timerID = setInterval(timer, 500); </script> <div id="timer"></div> <script> const timer = () => { let now = new Date(); document.getElementById('timer').innerHTML 古い書き方に巻き戻す
  5. 「型」とは let x = 1; let y = 2; x

    = '文字列を代入します'; console.log(x * y); // NaN
  6. 「型」とは let x = 1; let y = 2; x

    = '文字列を代入します'; console.log(x * y); // NaN 数字 文字
  7. 「型」とは let x = 1; let y = 2; x

    = '文字列を代入します'; console.log(x * y); // NaN let x: number = 1; let y: number = 2; x = '文字列を代入します'; console.log(x * y); // NaN ここでエラー
  8. 要素の生成 <div id="app"> {{ message }} </div> <script> let app

    = new Vue({ el: "#app", data: { message: "Vue.jsを勉強中です" } }); </script> Vue.jsを勉強中です
  9. イベント制御 <div id="app"> <button @click="checkClick" :disabled="clicked">決済する </button> </div> <script> var

    app = new Vue({ el: "#app", data: { clicked: false }, methods: { checkClick: function() { this.clicked = true } } }) </script>
  10. フォームの制御 <div id="app"> <clock></clock> <clock style="color: blue">現在時刻</clock> </div> <script> Vue.component('clock',

    { data: function () { return { time: '' } }, mounted: function () { var timerID = setInterval(this.refresh, 500); }, methods: { refresh: function () { var now = new Date(); this.time = `${now.getHours()}:${now.getMin utes()}:${now.getSeconds()}` } }, ... template: '<div :style=""><h2><slot>時計 </slot></h2>{{ time }}</div>' }) var app = new Vue({ el: "#app" }) </script>