2014-07-07 3 views
-1

나는 자바 스크립트를 처음 사용하고 있으며 자바 스크립트를 사용하는 간단한 웹 사이트를 디자인하려고합니다. 현재 계산기를 사용하고 있으며 웹 사이트를로드 할 때 아무 것도 시작하지 않으며 오류가 발생하지 않습니다. HTML/크롬 외부에서 코드를 시도했지만 코드 오류도 발생했습니다. 누구든지 나를 도울 수 있다면 많이 감사 할 것입니다.자바 스크립트 오류 - 시작하기

<!DOCTYPE html> 
<html> 
    <head> 

    </head> 
    <body> 
     <div class="title"> 
      <h1> 
       This is a Test Environment for JavaScript 
      </h1> 
      <h2 id="Display"> 
       *Null* 
      </h2> 
     </div> 
     <div class = "body"> 
      <div class="buttons"> 
       <div class = "row1"> 
        <button onclick = "calc.addNum(1)"> 1</button> 
        <button onclick = "calc.addNum(2)"> 2</button> 
        <button onclick = "calc.addNum(3)"> 3</button> 
        <button onclick = "calc.add()"> +</button> 
       </div> 
       <div class = "row2">  
        <button onclick = "calc.addNum(4)"> 4</button> 
        <button onclick = "calc.addNum(5)"> 5</button> 
        <button onclick = "calc.addNum(6)"> 6</button> 
        <button onclick = "calc.subtract()"> -</button> 
       </div> 
       <div class = "row3"> 
        <button onclick = "calc.addNum(7)"> 7</button> 
        <button onclick = "calc.addNum(8)"> 8</button> 
        <button onclick = "calc.addNum(9)"> 9</button> 
        <button onclick = "calc.multiply()"> *</button> 
       </div> 
       <div class = "row4"> 
        <button onclick = "calc.addNum(0)"> 0</button> 
        <button onclick = "calc.divide()"> /</button> 
        <button onclick = "calc.calculate()"> =</button> 
       </div> 
      </div> 
     </div> 

    <script> 
     var calc = 
     { 
      var first, 
      var operator: null, 
      var second, 
      var result, 
      var Displayer = document.getElementById("display") 
     }; 
     calc.addNum = function(number) 
     { 
      alert(number); 
      if(operator == null) 
      { 
       this.first = this.first.concat(number); 
      } 
      else 
      { 
       this.second = this.second.concat(number); 
      } 
      Displayer.innerHTML = first + operator + second; 
     }; 
     calc.add = function() 
     { 
      this.operator = "add"; 
     }; 
     calc.subtract = function() 
     { 
      this.operator = "subtract"; 
     }; 
     calc.divide = function() 
     { 
      this.operator = "divide"; 
     }; 
     calc.multiply = function() 
     { 
      this.operator = "muliply"; 
     }; 
     calc.calculate = function() 
     { 
      switch(operator) 
      { 
      case "add": 
       this.result = this.first + this.second; 
       break; 
      case "subtract": 
       this.result = this.first - this.second; 
       break; 
      case "subtract": 
       this.result = this.first/this.second; 
       break; 
      case "muliply": 
       this.result = this.first * this.second; 
       break; 
      default: 
       alert("You need to set an operator"); 
       break; 
      } 
      Displayer.innerHTML = this.result; 
      this.operator = null; 
     }; 

     window.onload = calc 
    </script> 
</body> 

이와 함께가는 CSS 문서가 있지만, 필요에 불과하다 : 여기 내 HTML 문서입니다. 나는 그것에 대한 링크를 주석 처리했다.

+1

는 당신에게 당신이 오류를하지 않겠해야 하는가? 니가해야 할 것처럼 보인다. 이 오류를 어디에서 찾고 있습니까? js 콘솔에 익숙하십니까? –

+0

크롬 (HTML 문서)을 실행 중이 었는데 스크립트가 실패 할 때 오류가 발생하지 않는다고 생각합니다. 하지만 확실히 JS 콘솔에서 크롬 오류가 발생했습니다. 콘솔의 오류 보고서에 익숙하지 않아서 무슨 일이 벌어 졌는지 디버그 할 수 없습니다. – Cirrith

답변

2
var calc = { 
    var first, 
    var operator: null, 
    var second, 
    var result, 
    var Displayer = document.getElementById("display") 
} 

var calc = { 
    first  : undefined, 
    operator : null, 
    second : undefined, 
    result : undefined, 
    Displayer : document.getElementById("display") 
} 
+1

고맙습니다, 그게 작동했습니다 – Cirrith

+0

도와 드리겠습니다 :) – AlienWebguy