JavaWeb笔记

03.JavaScript

2019-06-14  本文已影响0人  xinyaZ

JavaScript特性

  1. 脚本语言。JavaScript是一种解释型的脚本语言,在程序的运行过程中逐行进行解释。
  2. 基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也 能使用现有的对象。
  3. 简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做 出严格的要求,是基于Java基本语句和控制的脚本语言。
  4. 动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务 器就可以对用户的输入做出响应。
  5. 跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。

JavaScript语法

1. 变量

在JavaScript中通过var关键字来声明一个变量,在使用的过程中可以赋任意值。 严格区分大小写。

<script type="text/javascript">
    //1.变量声明
    //JS是一门弱类型的语言,声明变量只需要使用一个var关键字即可
    var a;
    //2.变量赋值
    //JS还是一门动态类型的语言,在使用变量的过程中可以赋任意值
    a=123;
    a="hello";
    a='world';
    a=true;
    //3.变量严格区分大写小写
    var num = 666;
    alert(Num);
</script>

2. 函数

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

3. 对象

JavaScript 对象是拥有属性和方法的数据。在 JavaScript中,几乎所有的事物都是对象。

  1. 对象的创建

    //第一种,使用new Object()创建
    var obj = new Object();
    //第二种,使用{}创建
    var obj = {};
    
  1. 为对象添加属性

    //第一种,通过 对象.属性名 = “属性值” 添加
    obj.name = "zhangsan";
    obj.age = 12;
    obj.sum = function(a,b){
    return a+b;
    }
    //第二种,使用{}创建对象时,直接向对象中添加属性
    var obj = {"name" : "zhangsan","age" : 21,
               "sum" : function(a,b){ return a+b;}
    };
    
    
  2. 函数也是对象

    在JavaScript中,函数也作为一种数据类型存在,而且是引用数据类型,函数名就是指向其内存空间地址的引用。

    var a = function() {
     alert("A");
    };
    var b = a;
    a.fname = "tom";
    alert(b.fname); //结果为tom
    alert(b);//alert a 的整体内容:function(){...}
    b();//A
    
    

    函数执行

    函数名 + ( )

    <p id="demo">段落</p>
    <script>
     function myFunction(a,b){
         return a*b;
     };
     //将p内容“段落”修改为“20”
     document.getElementById("demo").innerHTML=myFunction(2, 10);
    </script>
    

4. this关键字

Javascript输出

JavaScript 可以通过不同的方式来输出数据:

window.alert()

使用 window.alert() 弹出警告框。

<script>
    window.alert(5 + 6);
</script>

document.write()

使用 document.write() 方法将内容写到 HTML 文档中。

如果在文档已完成加载后执行 document.write,整个 HTML 页面将被覆盖。

<p>我的第一个段落。</p>
<button onclick="myFunction()">点我</button>
<script>
function myFunction() {
    document.write(Date());
}
</script>

innerHTML

使用 innerHTML 写入到 HTML 元素。

使用 document.getElementById(id) 来访问 HTML 元素。 并 innerHTML 来获取或插入元素内容:

<p id="demo">我的第一个段落</p>
<script>
    document.getElementById("demo").innerHTML = "段落已修改。";
</script>
//document.getElementById("demo") 是使用 id 属性来查找 HTML 元素的 JavaScript 代码 。
//innerHTML = "段落已修改。" 是用于修改元素的 HTML 内容(innerHTML)的 JavaScript 代码。 

console.log()

使用 console.log() 写入到浏览器的控制台。

<script>
    a = 5;
    b = 6;
    c = a + b;
    console.log(c);
</script>

JavaScript事件驱动

事件

用户事件:用户操作,例如单击、鼠标移入、鼠标移出等。

系统事件:由系统触发的事件,例如文档加载完成。

事件可以用于处理表单验证,用户输入,用户行为及浏览器动作:

页面加载时触发事件

页面关闭时触发事件

用户点击按钮执行动作

验证用户输入内容的合法性

自定义事件响应函数

  1. 从文档对象模型中获取控件对象[借助DOM API实现]

  2. 声明一个事件响应函数

  3. 将事件响应函数的引用赋值给控件对象的事件属性

    例如:window.onload = function(){}

事件执行过程

JavaScript嵌入方式

游览器加载顺序:按从上到下的顺序加载,遇到script标签先执行脚本程序,执行完成后再继续加载

  1. 写在标签的事件属性中,结构与行为相耦合,不建议使用

    <button id="btnId" onclick="alert('Hello JS')">SayHello</button>
    
  2. 写在script标签中,script标签放到head标签中

    <script type="text/javascript">
     var btnEle = document.getElementById("btn");
     btnEle.onclick = function() {
         alert("hello");
     };
    </script>
    </head>
    <body>
     <button id="btn">点我</button>
    </body>
    

    无法获取body标签中的节点,使用window.onload=function(){},在页面加载完成后执行程序代码。

    <script type="text/javascript">
        window.onload = function(){
             //获取按钮对象
             var btnEle = document.getElementById("btnId");
             //给按钮对象绑定单击事件
             btnEle.onclick = function(){
                 alert("Hello");
             };
        };
    </script>
    
  1. 写在script标签中,script标签放到body标签后面,可以获取节点,但是不符合我们的习惯

    <script type="text/javascript">
        //获取按钮对象
        var btnEle = document.getElementById("btnId");
        //给按钮对象绑定单击事件
        btnEle.onclick = function(){
             alert("Hello");
        };
    </script>
    
  1. 引入外部js文件,script标签放到head标签中

    <script type="text/javascript" src="javascript.js"></script>
    
上一篇下一篇

猜你喜欢

热点阅读