zoukankan      html  css  js  c++  java
  • [TypeScript] 1. Catching JavaScript Mistakes with TypeScript

    The TypeScript compiler is a powerful tool which catches mistakes even in vanilla JavaScript. Try it online at the TypeScript Playground, zero setup required.

    Error version:

    var movie = { title: "Memento", year: 2000, IMDB: 8.5, title: "" };
    var rating = movie.imdb;
    
    
    
    function Point(x, x) {
      this.x = x;
      this.y = y;
    }
    Point.prototype.distance = function() {
      return Math.sqrt(x * x + y * y);
    };
    
    
    
    function isPast(date) {
      var now = Date().getTime();
      return date.getTime() < now;
    }
    
    
    
    function ask(question) {
      var answer = confirm(question);
      var answerView = document.getElementByID('answer');
      answerView.innerHTML = answer;
    }
    
    
    
    function handleLoad() { console.log('loaded'); }
    document.onLoad = handleLoad();
    
    
    
    function newCoinToss() { 
      return Math.random > 0.5 ? 'HEADS' : 'TAILS'; 
    }
    var tosses = [1,2,3].map(newCoinToss);
    
    var allHeads = tosses.every(function(toss) { 
      return toss = 'HEADS'; 
    });
    if (allHeads) console.log(allHeads.length, 'heads in a row!');
    
    
    
    document.addEventListener('keydown', function(event) {
      console.log(event.clientX, event.clientY);
    });

    Using WebStorm, in the Terminal, it displays the error message for you.

    Fixed version in TypeScript:

    var movie = { title: "Memento", year: 2000, IMDB: 8.5 };
    var rating = movie.IMDB;
    
    
    
    function Point(x,y) {
      this.x = x;
      this.y = y;
    }
    Point.prototype.distance = function() {
      return Math.sqrt(this.x * this.x + this.y * this.y);
    };
    
    
    
    function isPast(date) {
      var now = new Date().getTime();
      return date.getTime() < now;
    }
    
    
    
    function ask(question) {
      var answer = prompt(question);
      var answerView = document.getElementById('answer');
      answerView.innerHTML = answer;
    }
    
    
    
    function handleLoad() { console.log('loaded'); }
    document.onload = handleLoad;
    
    
    
    function newCoinToss() { 
      return Math.random() > 0.5 ? 'HEADS' : 'TAILS'; 
    }
    var tosses = [1,2,3].map(newCoinToss);
    
    var allHeads = tosses.every(function(toss) { 
      return toss == 'HEADS'; 
    });
    if (allHeads) console.log(tosses.length, 'heads in a row!');
    
    
    
    document.addEventListener('mousedown', function(event) {
      console.log(event.clientX, event.clientY);
    });
  • 相关阅读:
    Job流程:Shuffle详解
    学Python Django学得很迷茫,怎么办?-转自知乎
    URL补充
    创建多对多以及增加示例
    Day20-初识Ajax
    笔记-自己看Day20-待续
    Day20-单表中获取表单数据的3种方式
    Day19内容回顾
    一点疑惑的解释
    python os.path模块常用方法详解
  • 原文地址:https://www.cnblogs.com/Answer1215/p/4350890.html
Copyright © 2011-2022 走看看