Javascript基础(二)——注意事项

          本来是想一篇博客写完呢,不过感觉篇幅大了,就分了两篇。这篇接着上一篇来总结,Javascript初学者需要注意的一些事项:

 

   二,注意事项:

       1,2两点,注意区分大小写和单引号,双引号的上一篇博客已经提到!我们从第三个开始说。


        3,括号:在Javascript中括号包含两种语义,一是分隔符;二是表达式。

            例如:分隔符:(1+3*3==12中括号就起着分隔符的含义。

                        表达式:(function(){}();这里前边一个括号表示分隔符,后边一个表示立刻执行这个方法。


        4,函数调用和引用:

                例如:var foo=example();

                               varfoo1=example;

             第一个表示调用函数example的返回值给foo,第二个表示将函数的引用赋给一个值foo1.


        5,换行:

          无论使用哪种引号创建字符串,字符串中间都不能包含强制换行符。

         换行可以通过在行的结尾加上“\”或者在下一行的前边用连接符“+”来告知浏览器上下两行是一行 连续的。

   例如:

 

        var temp='<h2 class ="a"> A list</h2>'
         +"<ol>"
         +'<li class="n"> Foo</li>'
         +"</ol>";

 


    等价于:

 

 

        var temp='<h2 class ="a"> A list</h2>'\
         "<ol>"\
         '<li class="n"> Foo</li>'\
         "</ol>";

 

 


        6,分号,大括号可选:

            Javascript中每行语句的最后并不是必须用分号结尾,这是可选项;里边的大括号也是可选项。但是为了避免某种歧异,强烈建议大家都不全这些东西。几个例子:

         Alert("nihao !");alert("nihao !")  有无分号,是没有区别的;


            却是完全不同的!



 

 7,不支持重载:

         Javascript虽然也是面向对象编程的,但是从在在这里却不支持。

      例如:

          function myFunction(a,b){}

          function myFunction(a)();

   这两个同时出现在脚本代码中,由于不支持重载,会导致下边的函数将上边的函数覆盖。



        8,作用域,闭包:

               作用域:其实和我们代码编程里边的命名空间相似,就是指某一属性或方法具有访问权限的代码空间,也就是我们经常说的局部变量,全局变量等等。例如:


             function myFunction(){

      var temp="ljh"; 

             }


      上边的temp在函数外面无法访问。

  

           闭包:是和作用域息息相关的,就是能够读取其他函数内部变量的函数。可以理解为定义在函数内部的函数。

例如: 

 

 

 

function f1(){
    n=999;
    function f2(){
      alert(n);
    }
    return f2;
  }
  var result=f1();
  result(); // 999


           当然闭包的用途:一个是前面提到的可以读取函数内部的变量,另一个就是让这些变量的值始终保持在内存中。例如:

 


 

 function f1(){
    var n=999;
    nAdd=function(){n+=1}
    function f2(){
      alert(n);
    }
    return f2;
  }
  var result=f1();
  result(); // 999
  nAdd();
  result(); // 1000

 

 

           result实际上就是闭包f2函数。它一共运行了两次,第一次的值是999,第二次的值是1000。这证明了,函数f1中的局部变量n一直保存在内存中,并没有在f1调用后被自动清除。


          这些既是闭包的优点,又是闭包的缺陷,使用闭包时一定要慎用。

 

          综上,为一下我们学习Javascript需要注意的一些事项,当然还有很多,这里这是简单列出几点。更多的学习还需要我们不断的实践。



 

posted @ 2013-06-16 13:02  爱生活,爱编程  阅读(163)  评论(0编辑  收藏  举报