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);
    });
  • 相关阅读:
    [No000068]document.body.clientHeight 和 document.documentElement.clientHeight 的区别
    [No000067]Js中获取当前页面的滚动条纵坐标位置scrollTop
    jquery 给a标签绑定click
    java 延时
    MySQL建表语句+添加注释
    ubuntu 搜狗输入法内存占用太多,卡顿不够处理办法
    org.apache.http.client.HttpClient使用方法
    json 文件打读取
    bootStrap @media 用法
    java web项目获取项目路径
  • 原文地址:https://www.cnblogs.com/Answer1215/p/4350890.html
Copyright © 2011-2022 走看看