二、JS的引入方式

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
-
- head>
- <body>
-
- <script src="JS/JS.demo.js">script>
- body>
- html>


- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- // 方式一:弹出警告框
- window.alert("Hello JS")
- // 方式二:写入html 页面中
- document.write("Hello JS")
- // 方式三:控制台输出
- console.log("Hello JS")
-
- script>
- body>
- html>


- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
-
- <script>
- // 变量定义
- // var a=13
- // alert(a)
- // a="张三"
- // alert(a)
- // 特点1:作用域比较大,全局变量
- // 特点2:可以重复定义
- // {
- // var x=666
- // var x=777
-
- // }
- // alert(x)
- //let:定义局部变量,代码块外无效
- // {
- // let a=66;//不能重复定义
- // alert(a);
- // }
- // const:常量不能被改变 ,否则会报错
- const pi=3.14;
- alert(pi);
- script>
- body>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- alert(typeof 3.14);//number
- alert(typeof 3);//number
- alert(typeof "A");//String
- alert(typeof "Hello");//String
- alert(typeof true);//boolean
- alert(typeof false);//boolean
- alert(typeof null);//object
- var a;
- alert(typeof a);//undefined
- script>
- body>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- // alert(typeof 3.14);//number
- // alert(typeof 3);//number
- // alert(typeof "A");//String
- // alert(typeof "Hello");//String
- // alert(typeof true);//boolean
- // alert(typeof false);//boolean
- // alert(typeof null);//object
- // var a;
- // alert(typeof a);//undefined
- // 类型转换:其他类型转换为数字类型
- // alert(parseInt ("12"))//12
- // alert(parseInt ("12A12"))//12
- // alert(parseInt ("A45"))//NaN(not a number)
- //类型转换:数字类型转换为boolean类型
- // if(0){//false
- // alert("0转换为false")
- // }
- // if(NaN){//false
- // alert("NaN转换为false")
- // }
- // if(-1){//true
- // alert("初0和NaN其他数字转为True")
- // }
- //类型转换:字符串类型转换为boolean类型
- if(""){
- alert("空字符串为false,其他都是true")
- }
- if(null){
- alert("null转换为false")
- }
- if(undefined){
- alert("undefined转换为false")
- }
-
- script>
- body>
- html>



- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- //定义函数 方式:1
- // function add(a,b){
- // return a+b;
- // }
- //定义函数 方式:2
- var add=function (a,b){
- return a+b;
- }
- //函数调用
- var result=add(10,20);
- alert(result);
-
-
- script>
- body>
- html>


- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- //定义数组方式1
- // var arr=new Array(1,2,3,4);
- //定义数组方式2
- // var arr =[1,2,3,4]
- // console.log(arr[0]);
- // console.log(arr[1]);
- //特点 :长度可变 类型可变
- // var arr =[1,2,3,4]
- // arr[10]=50;
- // console.log(arr[10]);
- // console.log(arr[9]);//undefined
- // console.log(arr[8]);//undefined
- // arr[9]="A";
- // arr[8]=true;
- // console.log(arr);
- var arr =[1,2,3,4]
- // arr[10]=100;
- // for (let i = 0; i < arr.length; i++) {
- // console.log(arr[i]);
-
- // }
- // console.log("====================================");
- // //forEach 遍历数组中有值的元素
- // arr.forEach(function (e) {
- // console.log(e);
- // })
- // //箭头函数(...)=>{...}简化
- // arr.forEach( (e)=> {
- // console.log(e);
- // })
- arr.push(7,8,9);
- // console.log(arr);
- arr.splice(2,2);
- console.log(arr);
-
-
- script>
- body>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- //创建字符串对象
- // var str=new String("Hello String");
- var str=" Hello String ";
- console.log(str);
- //length
- console.log(str.length);
- //charAt
- console.log(str.charAt(3));
- console.log(str.charAt(4));
- //indexof
- console.log(str.indexOf("lo"));
- //trim
- var s=str.trim()
- console.log(s);
- //substring(start,end)---开始索引,结束索引(含头不含尾)
- console.log(s.substring(0,5));
-
-
- script>
- body>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- //自定义对象
- var user={
- name:"Tom",
- age:10,
- gender:"male",
- // eat: function(){
- // alert("用膳");
- // }
- eat(){
- alert("用膳");
- }
- }
- alert(user.name);
- user.eat();
- script>
- body>
- html>


- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- // //自定义对象
- // var user={
- // name:"Tom",
- // age:10,
- // gender:"male",
- // // eat: function(){
- // // alert("用膳");
- // // }
- // eat(){
- // alert("用膳");
- // }
- // }
- // alert(user.name);
- // user.eat();
- //定义JSON
- var jsonstr='{"name":"Tom","age":18,"addr":["北京","上海","西安"]}';
- alert(jsonstr);
- //json字符串--js对象
- var s =JSON.parse(jsonstr);
- alert(s.name);
- //js对象 ---字符串
- var str=JSON.stringify(s);
- alert(str);
- script>
- body>
- html>


- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- //获取
- // window.alert("hello BOM");
- // alert("BOM");
- //方法
- //confirm -对话框-确认:true,取消:false
- // var flag=confirm("您却仍删除该记录吗?");
- // alert(flag);
- // 定时器 -setInterval--周期性的执行某一个函数
- // var i=0;
- // setInterval(function(){
- // i++;
- // console.log("定时器执行了"+i+"次");
- // },2000);
- //定时器-setTimeout --延迟指定时间执行一次
- setTimeout(function(){
- alert("JS")
- },3000);
-
-
-
-
- script>
- body>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <script>
- //获取
- // window.alert("hello BOM");
- // alert("BOM");
- //方法
- //confirm -对话框-确认:true,取消:false
- // var flag=confirm("您却仍删除该记录吗?");
- // alert(flag);
- // 定时器 -setInterval--周期性的执行某一个函数
- // var i=0;
- // setInterval(function(){
- // i++;
- // console.log("定时器执行了"+i+"次");
- // },2000);
- //定时器-setTimeout --延迟指定时间执行一次
- // setTimeout(function(){
- // alert("JS")
- // },3000);
- //location
-
- alert(location.href);
- location.href="https://www.baidu.com";//跳转到百度
-
-
-
-
- script>
- body>
- html>


- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>JS-对象-DOM演示title>
- head>
-
- <body>
- <div style="font-size: 30px; text-align: center;" id="tb1">课程表div>
- <table width="800px" border="1" cellspacing="0" align="center">
- <tr>
- <th>学号th>
- <th>姓名th>
- <th>分数th>
- <th>评语th>
- tr>
- <tr align="center" class="data">
- <td>001td>
- <td>张三td>
- <td>90td>
- <td>很优秀td>
- tr>
- <tr align="center" class="data">
- <td>002td>
- <td>李四td>
- <td>92td>
- <td>优秀td>
- tr>
- <tr align="center" class="data">
- <td>003td>
- <td>王五td>
- <td>83td>
- <td>很努力,不错td>
- tr>
- <tr align="center" class="data">
- <td>004td>
- <td>赵六td>
- <td>98td>
- <td>666td>
- tr>
- table>
- <br>
- <div style="text-align: center;">
- <input id="b1" type="button" value="改变标题内容" onclick="fn1()">
- <input id="b2" type="button" value="改变标题颜色" onclick="fn2()">
- <input id="b3" type="button" value="删除最后一个" onclick="fn3()">
- div>
- body>
-
- <script>
- function fn1(){
- document.getElementById('tb1').innerHTML="学员成绩表";
- }
-
- function fn2(){
- document.getElementById('tb1').style="font-size: 30px; text-align: center; color: red;"
- }
-
- function fn3(){
- var trs = document.getElementsByClassName('data');
- trs[trs.length-1].remove();
- }
- script>
-
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <img src="img/off.gif" id="h1"><br><br>
- <div class="cls">船只教育div><br>
- <div class="cls">黑马程序员div><br>
- <input type="checkbox" name="hobby">电影
- <input type="checkbox" name="hobby">旅游
- <input type="checkbox" name="hobby">游戏
- <script>
- //1.获取Element元素
- //1.1获取元素-根据ID获取
- // var img=document.getElementById("h1");
- // alert(img);
- //1.2获取元素-根据标签获取-div
- // var divs =document.getElementsByTagName("div")
- // for (let i = 0; i < divs.length; i++) {
- // alert(divs[i]);
-
- // }
- //1.3获取元素-根据name属性获取
- // var ins =document.getElementsByName("hobby");
- // for (let i = 0; i < ins.length; i++) {
- // alert(ins[i]);
- // }
-
- //1.4获取元素-根据class属性获取
- // var divs= document.getElementsByClassName("cls");
- // for (let i = 0; i < divs.length; i++) {
- // alert(divs[i]);
-
- // }
- //2查询参考手册,属性方法
- var divs= document.getElementsByClassName("cls");
- var d1=divs[0];
- d1.innerHTML="我真服辣666";
-
- script>
-
- body>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <img src="img/off.gif" id="h1"><br><br>
- <div class="cls">传智教育div><br>
- <div class="cls">黑马程序员div><br>
- <input type="checkbox" name="hobby">电影
- <input type="checkbox" name="hobby">旅游
- <input type="checkbox" name="hobby">游戏
- <font color="red"> font>
- body>
- <script>
- //1.点亮灯泡:src 属性值
- var img =document.getElementById("h1");
- img.src="img/on.gif";
- //2.将所有div标签的内容加上:very good(红色字体)
- var divs=document.getElementsByTagName("div");
- for (let i = 0; i < divs.length; i++) {
- const div = divs[i];
- div.innerHTML+="very good ";
-
- }
- //3.使所有复选框呈现选中状态
- var hobbys =document.getElementsByName('hobby');
- for (let i = 0; i < hobbys.length; i++) {
- const hobby = hobbys[i];
- hobby.checked=true;
-
- }
- script>
- html>


- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- head>
- <body>
- <input type="button" id="btn1" value="事件绑定1" onclick="on()">
- <input type="button" id="btn2" value="事件绑定2">
-
- body>
- <script>
- function on() {
- alert("按钮1被点击了...");
- }
- document.getElementById('btn2').onclick=function(){
- alert("按钮2被点击了...");
- }
- script>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>JS-事件-常见事件title>
- head>
-
- <body onload="load()">
-
- <form action="" style="text-align: center;" onsubmit="subfn()">
- <input type="text" name="username" onblur="bfn()" onfocus="ffn()" onkeydown="kfn()">
-
- <input id="b1" type="submit" value="提交">
-
- <input id="b1" type="button" value="单击事件" onclick="fn1()">
- form>
-
- <br><br><br>
-
- <table width="800px" border="1" cellspacing="0" align="center" onmouseover="over()" onmouseout="out()">
- <tr>
- <th>学号th>
- <th>姓名th>
- <th>分数th>
- <th>评语th>
- tr>
- <tr align="center">
- <td>001td>
- <td>张三td>
- <td>90td>
- <td>很优秀td>
- tr>
- <tr align="center">
- <td>002td>
- <td>李四td>
- <td>92td>
- <td>优秀td>
- tr>
- table>
-
- body>
-
- <script>
- //onload : 页面/元素加载完成后触发
- function load(){
- console.log("页面加载完成...")
- }
-
- //onclick: 鼠标点击事件
- function fn1(){
- console.log("我被点击了...");
- }
-
- //onblur: 失去焦点事件
- function bfn(){
- console.log("失去焦点...");
- }
-
- //onfocus: 元素获得焦点
- function ffn(){
- console.log("获得焦点...");
- }
-
- //onkeydown: 某个键盘的键被按下
- function kfn(){
- console.log("键盘被按下了...");
- }
-
- //onmouseover: 鼠标移动到元素之上
- function over(){
- console.log("鼠标移入了...")
- }
-
- //onmouseout: 鼠标移出某元素
- function out(){
- console.log("鼠标移出了...")
- }
-
- //onsubmit: 提交表单事件
- function subfn(){
- alert("表单被提交了...");
- }
-
- script>
- html>

- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>JS-事件-案例title>
- head>
- <body>
-
- <img id="light" src="img/off.gif"> <br>
-
- <input type="button" value="点亮" onclick="on()">
- <input type="button" value="熄灭" onclick="off()">
-
- <br> <br>
-
- <input type="text" id="name" value="ITCAST" onblur="upper()" onfocus="lower()" >
- <br> <br>
-
- <input type="checkbox" name="hobby"> 电影
- <input type="checkbox" name="hobby"> 旅游
- <input type="checkbox" name="hobby"> 游戏
- <br>
-
- <input type="button" value="全选" onclick="checkAll()">
- <input type="button" value="反选" onclick="reverse()" >
-
- body>
-
- <script>
-
- //1. 点击 "点亮" 按钮, 点亮灯泡; 点击 "熄灭" 按钮, 熄灭灯泡;
- function on(){
- var light= document.getElementById('light');
- light.src="img/on.gif";
- }
- function off(){
- var light= document.getElementById('light');
- light.src="img/off.gif";
- }
-
- //2. 输入框聚焦后, 展示小写; 输入框离焦后, 展示大写;
- function lower(){
- var name=document.getElementById('name');
- name.value=name.value.toLowerCase();
- }
- function upper(){
- var name=document.getElementById('name');
- name.value=name.value.toUpperCase();
-
- }
-
-
-
- //3. 点击 "全选" 按钮使所有的复选框呈现选中状态 ; 点击 "反选" 按钮使所有的复选框呈现取消勾选的状态 ; -- onclick
- function checkAll(){
- var hobbys=document.getElementsByName('hobby');
- for (let i = 0; i < hobbys.length; i++) {
- const element = hobbys[i];
- element.checked=true;
-
- }
-
- }
- function reverse(){
- var hobbys=document.getElementsByName('hobby');
- for (let i = 0; i < hobbys.length; i++) {
- const element = hobbys[i];
- element.checked=false;
- }
- }
-
-
-
- script>
- html>