javascript 2-変数、スコープとメモリ

4649 ワード



function quote(){
    //         
    //    :Number Boolean String Undefined Null
    //    :         ,     ,            ,          
    //               
    var person = new Object();
    person.name = "liu";

    //alert(person.name);
    //   :            ,        ,       ,        ;
    var a=10;
    var b=a;
    //alert(a+b);

    //                 ,   ,       ,               
   var person2 = person;
  //alert(person2.name);

   //     or   ? 
   //C          javascript   
   modify(a);
   //alert(a);// a  10              ,
   //          ,modify      a,                  (        )
   //         a         a         

   //          ?

   modifyQuote(person);
  // alert(person.name);//  :xiaowanzi          person      
   //    person          person         ,    

   //instanceof             
   //alert(person instanceof Object);//true
   //alert(person instanceof Array);//false

   //        
   //        context 
   //        (    ) Window->quote ->changeColor
   var color = "red";

   function changeColor(){
       //  color    (       ),         arguments,      ,
       //        , quote ,   color ,    red ,        green
       //  :                       ?    ?
       if(color === "red"){
           color = "green";
       }
       else{
           color = "yellow";
       }
   }

   changeColor();
   //alert("now color:"+color);

   //         {}     ,   function(){},  :
   if(true){
       var book = "EnglishBook";
   }
   //alert(book);

   //  var   ,                 
   //                  ?
   //     java          ,          ,             
   //    :         ,              ,        ;
   //           ,         ,      ,       
   //            


   //                ,    web       ,                   

   //  :
   color = null;//      
}

function modify(a){
    a=12;
    //return a;
}

function modifyQuote(person){
    person.name="xiaowanzi";
}

window.onload = quote;