JavaWeb——JavaScript

一、什么是JavaScript

        JavaScript是一门跨平台的、面向对象的脚本语言,用来控制网页的行为,它能使网页可交互。并且作为脚本语言,不需要编译直接解释运行即可。

        JavaScript的引入方式:

  • 内部脚本:将JS代码定义在HTML页面中

        在HTML中,JavaScript代码必须位于<script>与</script>标签之间

 <script>
        /*弹出警告框*/
        alert("hello js");
</script>

         在HTML文档中可以在任意地方,放置任意数量的<script>。一般把脚本置于<body>元素的底部,可改善显示速度,因为脚本执行会拖慢显示。

  • 外部标签:将JSd代码定义在外部JS文件中,然后引入HTML页面中。
<script src="../js/demo.js"></script>

         外部文件不能包含<script>标签。<script>标签不能自闭合,必须写成<script></script>

二、JavaScript基础语法

3.1书写语法

  1. 区分大小写:与Java一样,变量名、函数名以及其他一切东西都是区分大小写的。
  2. 每行结尾的分号可有可无,为了规范最好写上。
  3. 注释:单行注释://注释内容  多行注释:/*注释内容*/
  4. 大括号代表代码块
    if(count == 3){
        alter(count);
    } 

3.2输出语句 

  1. 使用window.alert()写入警告框
  2. 使用document.write()写入HTML输出
  3. 使用console.log()写入浏览器控制台
    window.alert("hello JS~");//弹出警告框
    document.write("hello JS~");//写入HTML
    console.log("hello JS~");//写入控制台

3.3变量 

        JS中使用var关键字来声明变量

var test = 20;
test = "张三";

        JS是一门弱类型的语言,变量可以存放不同类型的值。var声明的变量全局有效,而let关键字生命的变量只在let关键字所在的代码块内部有效,且不允许重复声明。

3.4数据类型

JS中的五种原始类型:

  • number:数字(整数、小数、NaN)
  • string:字符、字符串、单双引皆可。
  • boolean:布尔类型,true,false。
  • null:对象为空
  • undefined:当声明的变量未初始化时,该变量的默认值是undefined。

        使用typedef运算符可以获取数据类型。

alert(typedef age);

3.5类型转换 

        JS的运算符中,在比较的时候==会进行类型转换,===不会进行类型转换。

其他类型转换为数字:

  1. string:将字符串字面值转为数字,如果字面值不是数字,则转为NaN。一般使用parseInt进行转换。
  2. booleam:true转为1,false转为0。

其他类型转换为boolean

  1. number:0和NaN转为false,其他的数字转换为true。
  2. string:空字符串转换为false,其它字符串转换为true。
  3. null:转为false。
  4. undefined:转为false。

3.6函数

JS中函数通过function关键字进行定义,语法为:

function functionName(参数1,参数2..){
    要执行的代码
}

        形参不需要类型,因为JavaScript是弱类型语言,返回值也不需要定义类型,可以在函数内部直接使用return返回即可。

四、JavaScript对象

4.1Array对象

JS中,Array对象用于定义数组

var 变量名 = new Array(元素列表);//方式一
var 变量名 = [元素列表];//方式二

常用属性和方法:

length:设置或返回数组中元素的数目。

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

splice():删除元素,并向数组添加新的元素。

4.2String对象

var 变量名 = new String(s);
var 变量名 = s;

常用属性和方法:

 length:返回字符串的长度。

charAt():返回在指定位置的字符。

IndexOf():检索字符串。

trim():去除字符串前后两端的空白字符。

4.3自定义对象

格式:

var 对象名称 = {
                属性名称1:属性值1
                属性名称2:属性值2    
                ...
                函数名称:function(形参列表){}
                ...
                };

五、BOM对象 

        Browser Object Model 浏览器模型对象,将浏览器的各个组成部分封装为对象。大致分为:

  • Window:浏览器窗口对象
  • Navigator:浏览器对象
  • Screen:屏幕对象
  • History:历史记录对象
  • Location:地址栏对象

5.1Window对象

        Window对象是浏览器中的顶层对象,代表当前浏览器窗口或标签页。它充当全局对象,所有全局变量和函数均为其属性,他可以获取其他的BOM对象的只读引用。

常用方法:

alert()//显示带有一段消息和一个确认按钮的警告框
confirm()//显示带有一段消息以及确认按钮和取消按钮的对话框
setInterval()//按照指定的周期来调用函数或计算表达式
setTimeout()//在指定的毫秒数后调用或计算表达式

5.2history对象 

        使用window.history获取,其中window.可以省略

window.history.方法();
history.方法();

常用方法:

back()//加载history列表中的前一个URL
forward()//加载history列表中的下一个URL

5.3location对象

        使用window.location获取,其中window.可以省略

window.location.方法();
location.方法();

常用属性:

href//设置或返回完整的URL

六、DOM对象 

        Document Object Model 文档对象模型,将标记语言的各个组成部分封装为对象。

  • Docement:整个文档对象
  • Element:元素对象
  • Attribute:属性对象
  • Text:文本对象
  • Comment:注释对象

         JS通过DOM就可以对HTML进行操作:

  • 改变HTML元素的内容
  • 改变HTML元素的样式
  • 对HTML DOM事件作出反应
  • 添加和删除HTML元素

除了上面的五个核心对象之外,针对HTML文档的标准模型还有:

  • Image:<img>
  • Button:<input type='button'>

        HTML中的Element对象可以通过Document对象获取,而Document对象是通过window对象获取的。Document对象中提供了以下获取Element元素对象的函数:

var h1 = document.getElementById('h1');//根据id属性值获取,返回单个Element对象
var divs = document.getElementsByTagName('div');//根据标签名称获取,返回Element对象数组
var hobbys = document.getElementsByName('hobby');//根据name属性值获取,返回Element对象数组
var clss = document.getElementsByClassName('cls');//根据class属性值获取,返回Element对象数组

七、事件监听 

事件:HTML事件是发生在HTML元素上的 “事情”。比如:

  • 按钮被点击
  • 鼠标移动到元素上
  • 按下键盘按键

事件监听:JavaScript可以在事件被侦测到时执行代码。

事件绑定:

  1. 通过 HTML标签中的事件属性进行绑定
    <input type="button" onclick="on()" value="按钮1">
    <script>
        function on(){
            alert('我被点击了!');
        }
    </script>
    
  2. 通过 DOM 元素属性绑定
    <input type="button" id="btn" value="按钮2">
    
    <script>
        document.getElementById('btn').onclick=function(){
            alert('我被点击了!');
        }
    </script>
    

常见事件:

事件名

说明

onclick

鼠标单击事件

onblur

元素失去焦点

onfocus

元素获得焦点

onload

某个页面或图像被完成加载

onsubmit

当表单提交时触发该事件

onkeydown

某个键盘的键被按下

onmouseover

鼠标被移到某元素之上

onmouseout

鼠标从某元素移开

 

 

 

      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值