栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java第二阶段之JavaScript

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java第二阶段之JavaScript

一、JS的组成之ECMAscript (一)数据类型

        JS中也存在很多的数据类型,总体上可分为基本数据类型和引用数据类型。

        1、基本数据类型:

        (1)Undefined:Undefined类型只有一个值即undefined。当声明的变量未初始化时,该变量的默认值就是undefined。

        (2)Null:只有一个值即null表示空,一个占位符。值undefined实际是从值null派生来的,因此ECMAscript把他们列为等值。

        例如:alert(null == undefined); //true

        虽然两个值相等但是表示的意义不同,null为空值,

        undefined是未定义。

        (3)Boolean:表示真假,只有两个值true和false。

        (4)Number:表示任意数字,在JS中所有值类型统称为数字类型。

        (5)String:字符串类型用单引号或者双引号赋值。

        2、引用类型:

        引用类型通常叫做类(class),Javascript将引用类型转化为对象进行处理。

        Javascript是基于对象而非面向对象。对象的默认值是null。

        我们可以通过typeof(变量名)来查看一个变量所属的数据类型。

(二)变量

        命名语法:var 变量名 = 初始值; 或者 var 变量; var 变量1,变量2,变量3;

        代码示例:





js的变量声明




效果图:

 

(三)运算符

        1、一元运算符:++ 、--:符号在前,先自增(自减),再运算;符号在后,先运算,再自增(自减)

        2、算术运算符:+  -   *  /  %   ++   -- 等。

        3、赋值运算符:=   +=   -=   *=  /=   %= 等。

        4、比较运算符:> 、< 、>= 、<=、==、!=、===(全等)、!==:类型相同直接比较,类型不同先转换再比较。

        5、逻辑运算符:&&(短路与)、||(短路或)、!(非)

        6、条件(三元)运算符:表达式 ? 值1 : 值2 (表达式为true取值1,表达式为false取值2)

        以上所有运算符的使用与java类似。

(四)流程控制

        与java类似,不多叙述

(五)基本对象         1、Function函数对象

                1、创建方法的语法格式:

                (1)var func = new Function(形式参数列表,方法体);

                (2)function 方法名(形式参数列表){方法体}(推荐使用);

                (3)var 方法名 = function(形式参数列表){方法体};

                2、方法调用的语法格式:

                方法名称(实际参数列表);

                3、js方法的特点:

                (1)方法定义时,形式参数类型不用写,返回值类型也不写

                (2)方法是一个对象,定义相同方法名会被覆盖

                (3)在JS中方法的调用只和方法名有关与方法的参数无关

                4、js方法的属性:length,用于获取实际参数的个数

        代码示例:




    
    
    
    document
    


    

        2、Array数组对象

                1、创建数组:

                (1)var arr = new Array(); 空数组

                (2)var arr = new Array(默认长度) 默认长度的数组

                (3)var arr = [元素列表]; 具有初值的数组

                2、js数组的特点:

                (1)在JS中,数组元素的类型可变

                (2)在JS中数组的长度可变

                3、js数组的属性:length 获取数组长度、元素个数

                4、js数组中的常用方法:

                (1)join(字符); 将数组元素通过指定的字符拼接成字符串

                (2)push(); 向数组的末尾添加一个或更多元素,并返回新的长度




    
    
    
    document
    


    

        3、Boolean(了解)

                ①跟java一致,true/false

                ②定义boolean类型的变量

                var b = true/false;

        4、Date日期对象

                1、创建日期对象:var now = new Date() 获取当前时间。

                2、日期对象的常用方法:

                (1)toLocaleString():根据本地时间格式,把 Date 对象转换为字符串。

                (2)getTime():返回 1970 年 1 月 1 日至今的毫秒数

                (3)getHours():返回小时数。

                (4)getMinutes():返回分钟数。

                (5)getSeconds():返回秒数。

        代码示例:




    
    
    
    document
    


    

        5、Math 数学对象

                1、创建:Math对象不用创建直接使用。使用时直接调用方法,

                如:Math.方法名();

                2、常用方法:

                (1)random():返回 0 ~ 1 之间的随机数

                (2)max(x,y):返回 x 和 y 中的最大值

                (3)min(x,y):返回 x 和 y 中的最低值

                (4)ceil(x):对数进行向上取整

                (5)floor(x):对数进行向下取整

                (6)round(x):把数四舍五入为最接近的整数

                (7)abs(x):返回数的绝对值

                3、属性:PI,圆周率



 
     
     js中的数学对象Math
 
 
 
     
        6、Number数字对象

                1、Javascript只有一种数字类型。数字可以带小数点,也可以不带,表示整数和小数

                2、定义数字类型

                var n = 10;

                var n = 10.34;

        7、String字符串对象

                1、创建:

                (1)var str1 = "abc"; // string  

                (2)var str2 = new String("abc"); // object

                2、常用方法:

                (1)获取字符串的长度 str1.length

                (2)是否以某个字符开头 startsWith()

                (3)是否以某个字符结尾 endsWith()

                (4)截取字符串

                        a、substring(起始下标,结束角标)

                        b、substr(起始下标,截取长度)

                (5)根据某个字符拆分字符串 返回数组 split()

        示例代码:




    
    
    
    document
    


    

        8、RegExp正则表达式对象

                1、单个字符:如 [a]、 [ab] 匹配a或者b 、[a-zA-Z0-9] 匹配字母或者数字[字符]

                2、元字符:d 表示数字

                3、量词符号:

                ?:表示出现0次或1次

                *:表示出现0次或多次

                +:表示出现1次或多次

                {m} 出现m次

                {m,}至少出现m次

                {m,n}:表示m=<数量<=n

                4、开始结束符号:

                ^ 开始

                $ 结束     扩展 [^abc]

                5、创建正则表达式对象:

                (1)var reg = new RegExp("正则表达式");

                (2)var reg = /正则表达式/;

                6、测试正则验证的方法:

                test(参数):验证指定的字符串是否符合正则定义的规范

        代码示例:




    
    
    
    document
    


    

        9、Global全局对象

                1、Global封装的方法不需要对象可以直接调用。方法名();

                2、常用方法:

                (1)encodeURI():把字符串编码为 URI

                (2)decodeURI():解码某个编码的 URI

                (3)encodeURIComponent():把字符串编码为 URI 组件

                (4)decodeURIComponent():解码一个编码的 URI 组件

                (5)parseInt():解析一个字符串并返回一个整数。逐一判断每一个字符是否是数字,直到不是数字为止。将前面的数字转为number

                (6)isNaN():检查某个值是否是数字,返回false是数字,true不是数字

                (7)eval():计算 Javascript 字符串,并把它作为脚本代码来执行

        代码示例:





Global全局对象




二、DOM对象 (一)DOM简介

        1、文档对象模型(document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。通过 HTMLDOM,Javascript 能够访问和改变 HTML 文档的所有元素。

        2、当网页被加载时,浏览器会创建页面的文档对象模型

        (document Object Model)。

           dom原理:将文档及其文档中所有的标签都看作为对象,那么标签中的属性就是对象的属性属性,因此我们在获取或者设置标签属性的时候可以这么用  

            对象.属性名 (获取某个标签的对应属性值) 或者对象.属性名=xxx(给标签的属性设置值或者修改值),如果修改或者获取标签的内容可以通过innerHTML,innerText,value等属性实现对象.innerHTML (获取标签内容,包含标签内部的标签及样式)对象.innerText (获取标签内的纯文本,不包含标签内部的标签及样式)

        当获取封闭标签内容的时候,使用以上两个属性

        ---------------------------

        对象.value (获取标签的值,表单标签)

        当获取单标签内容或者值的时候来使用

(二)获取页面元素对象         1、查找页面元素的方法:

        (1)document.getElementById(id):通过id号来查找元素。返回单个对象

        (2)document.getElementsByTagName(name):通过标签名来查找元素。返回数组对象

        (3)document.getElementsByClassName(name):通过类名来查找元素。返回数组对象

        (4)document.getElementsByName(name):通过name属性名来查找元素。返回数组对象

        2、以上四种方法中,由于页面中元素的id号是唯一的,所以通过id获取的元素个数也是唯一的;而其他三种方式获取的元素个数不唯一,所以使用时需要像数组一样去获取指定的元素。

        代码示例:




    
    
    
    document
    
    
        #d{

        }
    


    抓鸭子,抓几只
        开始抓
    
    

嘎嘎嘎嘎嘎嘎嘎嘎

(三)操作页面元素对象         1、创建dom对象

        document.createElement("标签名");

        2、添加dom对象

        (1)A.appendChild(B) 将B添加到A内部的最后面

        (2)A.insertBefore(B, C) 将B添加到A内部C的前面

        3、删除dom对象

        (1)A.remove() 将A删除

        (2)A.remove(B) 将A内部的B删除

        4、替换dom对象

        A.replaceChild(B, C) 用B替换A内部的C

        代码示例:




    
    
    
    document
    


    
  • 第一个列表项
  • 第二个列表项
  • 第三个列表项
(四)操作元素属性

        1、页面元素.属性名 = “值” 2、设置:标签对象.setAttribute("属性名","属性值");

        3、获取:标签对象.getAttribute("属性名");

        4、删除:标签对象.removeAttribute("属性名");

        代码示例:




    
    
    
    document

    .c{
        border: 1px solid red;
        height: 200px;
        width: 200px;
        border-radius: 50%;
        background-color: blue;
    }




    
    
    
    
    

(五)操作元素样式         1、直接操作

        页面元素.style.css样式名称 = “值”

        2、间接操作:通过类名进行操作

        页面元素.setAttribute(“class”, “类名1 类名2”)

        先将css样式定义在类中,通过行间属性class,为其设置类

        代码示例:




    
    
    
    document
    
        div{
            border: 1px solid red;
            width: 300px;
            height: 300px;
        }
    
    


    
        这是一个盒子
    
    

(六)操作元素的内容

        1、标签对象.innerHTML 获取或者设置内容 可以包含标签

        2、标签对象.innerText 获取或者设置内容 只包含文本

        3、input标签对象.value 获取或者设置input框中的内容

        4、innerText和innerHTML语法:

        获取:标签对象.innerHTML

        修改:标签对象.innerHTML=要修改的值

        代码示例:




    
    
    
    document
    


    用户名:
    
    
    

(七)事件

        1、元素被执行某种操作,触发某些代码

        2、如何为页面元素对象绑定事件

        (1)在标签中指定事件的属性:

需要在脚本中,先行定义好func01这个方法~

        (2)获取标签元素绑定事件:

        document.getElementById("btn").onclick =function(){}

        第二种绑定事件用到的是匿名函数,直接书写方法体代码即可

        3、常见事件

代码示例:




    
    
    
    document
    


    div区域
    
    
    
    

 

三、BOM对象 (一)BOM简介

        1、Bom(browser object model):浏览器对象模型。在浏览器页面初始化时,会在内存创建一个全局对象,用来描述当前窗口的属性和状态,这个全局对象被称为浏览器对象模型。

        2、Bom有一个核心的对象window,window对象包含了6个核心模块

                1、document对象:文档对象

                2、frames对象:html的自框架

                3、History对象:页面的浏览记录

                4、Location对象:当前页面的地址

                5、Navigator对象:包含了浏览器相关信息

                6、Screen对象:显示屏幕相关信息

(二)Window

        ① 介绍

        1、所有的浏览器都支持window对象。它表示浏览器窗口,调用函数时window可以省略。所有Javascript全局对象、函数以及变量均自动成为window对象的成员。

        2、全局变量是window对象的属性。

        3、全局函数时window对象的方法。

        4、比如说html dom的document也是window对象的属性之一。

        Window.document.getElementById(),window可以省略

        ② 创建

        直接使用window对象

        ③ 方法

        1. 弹窗方法

                1. alert(); 显示带有一段消息和一个确认按钮的警告框  演示

                2. confirm(); 显示带有一段消息以及确认按钮和取消按钮的对话框  演示

                3. prompt(); 显示可提示用户输入的对话框 演示

        2 打开关闭方法

                (1) open(”打开窗口的路径“); 打开一个新的浏览器窗口或查找一个已命名的窗口

                (2) close(); 关闭浏览器窗口

        3、定时器方法

        JS中的定时器函数有两种:

                1、周期定时器:按照指定的周期来调用函数或代码串,执行多次。

                var timeid=Window.setInterval(code,millisec);

                window.clearInterval(timeid);清除定时器,使定时器停止执行函数或代码串。

                参数说明:

                code:要调用的函数或要执行的代码串。

                millisec:周期性执行或调用 code 之间的时间

                间隔,以毫秒为单位。

                2、超时定时器:在指定的毫秒数后调用函数或代码串,只执行一次。

                var timeid=Window.setTimeout(code,millisec);

                window.clearTimeout(timeid);清除定时器,

                可以阻止定时器的执行。

                参数说明:

                code:要调用的函数或要执行的代码串。

(六)Location

        1、window.location 对象可用于获取当前页面地址(URL)并把浏览器重定向到新页面

        2、window.location 对象在编写时可不使用 window 这个前缀。

        3、创建:window.location/location

        4、方法:reload():刷新当前页面

        5、属性href:获取请求的URL/跳转指定的URL地址中

        6、案例:3秒跳转页面

        代码示例:




    
    3秒跳转页面


    3


    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/434547.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号