首页 > 代码库 > 初识Javascript

初识Javascript

 JavaScript是一种基于对象(Object)和事件驱动 (EventDriven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java脚本语言(Java小程序)一起实现在一个 Web页面中连接多个对象,与Web客户交互作用。javascript的出现使得网页和用户之间实现了一种实时性的,动态性的,交互性的关系,使网页包 含更多活跃的元素和更加精彩的内容。 同时javascript短小精悍,在客户机上执行,大大提高了网页的浏览速度和交互能力。跟随小编继续追寻BS的脚步,今天小编和小伙伴一起来学习一下 Javascript的相关知识。

         在开始学习Javascript之前,我们先来看一个小例子”欢迎来到Javascript的世界“;代码如下:

         

[html] view plaincopyprint?
  1. <span style="font-size:18px;"><span style="font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  
  5. <title>无标题文档</title>  
  6. <script language="javascript" type="text/javascript">  
  7.    //弹出信息提示框     
  8.    alert("欢饮来到javascript的世界,和我一起快乐的开始js之旅吧`(*∩_∩*)′!");    
  9. </script>    
  10. </head>  
  11. <body>  
  12. </body>  
  13. </html>  
  14. </span></span>  

        运行效果如下:

        技术分享

        欢迎来到javascript的世界,和小编一起快乐的开始js之旅吧,接着,我们来看一张简单的思维导图,都是js的入门知识点,如下图:

        技术分享

        接下来,小编重要介绍一下js中的常见问题,js中常见的问题主要有八个,下面对这几个常见问题,进行详细介绍

        第一个:区分大小写;

        其实这部分的内容主要是为了区分咱们用别的语言来编写;咱们之前使用过的语言:vb就不区分大小写,而咱们讲的这个JavaScript就区分大小写。 JS中方法和变量都是区分大小写的,因此function myFunction{}和function Myfunction()是不同的。这一规则也适用于JavaScript核心对象例如:Array和Object.我们在定义一个数组的时候 Array,就必须是大写开头,当你写成小写之后,你会发现array的字体颜色会发生变化。


        第二个:单引号、双引号;

        单引号、双引号在JS中没有特殊的区别,都可以用来创建字符串。但作为一般性规则,大多数Js开发人员喜欢使用单引号而不是双引号,但是因为XHTML规范要求所有属性值都必须使用双引号括起来。这样在JS中使用单引号,而对XHTML属性使用双引号会使混合两者代码更方便也更清晰。单引号中可以包含双引号,反之双引号也可以包含单引号。
  

         第三个:括号

        在Javascript中括号包含两种语义,一是分隔符;二是表达式。例如:分隔符:(1+3)*3==12中括号就起着分隔符的含义。表达式:(function(){})();这里前边一个括号表示分隔符,后边一个表示立刻执行这个方法
          

        第四个:函数调用和引用;

        例如:var foo=example(); varfoo1=example;第一个表示调用函数example的返回值给foo,第二个表示将函数的引用赋给一个值foo1.

        第五个:换行;

        无论使用哪种引号创建字符串,字符串中间都不能包含强制换行符。换行可以通过在行的结尾加上“\”或者在下一行的前边用连接符“+”来告知浏览器上下两行是一行连续的。例如,下面两个小例子,是属于等价的关系。

        

[javascript] view plaincopyprint?
  1. <span style="font-size:18px;">var temp=‘<h2 class ="a"> A list</h2>‘    
  2.  +"<ol>"    
  3.  +‘<li class="n"> Foo</li>‘    
  4.  +"</ol>";  </span>  

        和下面这个是一样的;

        

[javascript] view plaincopyprint?
  1. <span style="font-size:18px;">var temp=‘<h2 class ="a"> A list</h2>‘\    
  2.  "<ol>"\    
  3.  ‘<li class="n"> Foo</li>‘\    
  4.  "</ol>";  </span>  

       第六个:分号,大括号可选;
       在Javascript中每行语句的最后并不是必须用分号结尾,这是可选项;里边的大括号也是可选项。但是为了避免某种歧异,强烈建议大家都不全这些东西。几个例子:Alert("nihao !");和alert("nihao !")  有无分号,是没有区别的,但是下面这个小例子,可是完全不同的哦。

        技术分享

        第七个:不支持重载;

        Javascript虽然也是面向对象编程的,但是从在在这里却不支持。例如:
        function myFunction(a,b){};
        function myFunction(a)();
        这两个同时出现在脚本代码中,由于不支持重载,会导致下边的函数将上边的函数覆盖。

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

[javascript] view plaincopyprint?
  1. <span style="font-size:18px;">   function myFunction(){  
  2.       var temp="dgh";   
  3.              }</span>  


       上边的temp在函数外面无法访问。 闭包:是和作用域息息相关的,就是能够读取其他函数内部变量的函数。可以理解为定义在函数内部的函数。例如:

        

[javascript] view plaincopyprint?
  1. <span style="font-size:18px;">function f1(){    
  2.     n=999;    
  3.     function f2(){    
  4.       alert(n);    
  5.     }    
  6.     return f2;    
  7.   }    
  8.   var result=f1();    
  9.   result(); </span>  

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

         

[javascript] view plaincopyprint?
  1. <span style="font-size:18px;">function f1(){    
  2.    var n=999;    
  3.    nAdd=function(){n+=1}    
  4.    function f2(){    
  5.      alert(n);    
  6.    }    
  7.    return f2;    
  8.  }    
  9.  var result=f1();    
  10.  result();  
  11.  nAdd();    
  12.  result();  </span>  

         

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

初识Javascript