第一周

96 阅读4分钟

1.JaveScript介绍:

简称:是一个运行在浏览器端的解释型弱类型面向对象脚本语言

2. 如何使用”

1.在HTML页面上书写一个script标签,再在里面书写js代码
        <script>
            js代码
           </script>
 2.创建一个xx.js的文件,在咋子HTML进行引入
         <script src="js路径">
            js代码
           </script>

3.变量

1.创建----var 变量名=值
2.需要连续创建多个变量可简写-----var 变量名=值,变量名=值.....

4.常量

1.创建-----const 常量名=值

2.分支结构

    程序的流程控制语句
          1.顺序结构:默认从上往下执行每一句话
          2.分支结构:通过条件判断,选择部分代码执行
          3.循环结构:通过条件判断,选择要不要重复执行模块代码

1.if else语句

 1.一个条件,一个事,满足就做不满足就不做
     if(条件){
         操作
         }
 2. 一个条件,两件事,满足就做第一件事,不满足就做第二件事
     if(条件){
         操作
         }else{
         默认操作{
         }
  3.多个条件多个事,满足谁就做谁
      if(条件1){
          操作1
          }else if(条件2){
          操作2
          }

2.switch case

switch(变量/表达式){
case1;
操作1case2;
操作2default;
默认操作;

3. 三目运算

条件?操作1:默认操作
条件1?操作1:条件2?操作2:条件3?操作3.....

3.循环结构

三种循环

1.while循环

语法:var 循环变量=几;
      while(循环条件){
          循环体
          循环变量变化
          }
特殊:while(ture){死循环}
    何时使用死循环:不确定循环次数的时候

2.for 循环

语法: forvar 循环变量==几;循环条件;循环变量变化){
                    循环体
                    }
特殊:for(; ;){死循环}

3.do while循环

语法:var 循环变量=几
    do{
        循环体
        循环变量变化
        }while(循环条件)

4.函数

定义/创建/声明:
    1.声明方式创建函数”
        function 函数名(){
            函数体/代码段
            return 返回值/结构
                }
         注意:函数创建后不会立刻执行,需要调用
    2.直接两方式创建函数
        var函数名=function(形参列表){
                    操作
                    return 返回值/结果
                    }
调用函数:
    var 接住返回的结构=函数值(实参列表)
作用域:
    1.全局作用域:全局变量和全局函数,在页面的任何一个位置都可以使用
    2.局部变量和局部函数,在当前的函数调用时,内部可用

5.DOM

文档对象模型:专门用于操作HTML文档的
Document Object Model

1.查找元素

1.通过ID查找元素
    var xxx=doucment.getElementById("id名")
2.通过标签名查找元素
    var elems=document/已经找到的父元素.getElementsByTagName("标签名");
3.通过class查找元素
    var elems=document/已经找到的父元素.getElementsByClassName("class名");
4.*通过关系去获取元素:前提条件:必须先找到一个元素才可以使用关系
	父元素:elem.parentNode; - 单个元素
	子元素:elem.children; - 集合
	第一个子元素:elem.firstElementChild; - 单个元素
	最后一个子元素:elem.lastElementChild; - 单个元素 
	前一个兄弟:elem.previousElementSibling; - 单个元素 
	后一个兄弟:elem.nextElementSibling; - 单个元素

2操作元素

1.内容:
	1、*elem.innerHTML - 获取和设置开始标签到结束标签之间的内容,支持识别标签的
		获取:elem.innerHTML;
		设置:elem.innerHTML="新内容";

	2、elem.innerText - 获取和设置开始标签到结束标签之间的纯文本,不识别标签的
		获取:elem.innerText;
		设置:elem.innerText="新内容";

	以上两个属性都是专门为双标签准备,而有一个单标签也是可以写内容,叫做<input />,我们如何获取?
	3、input.value - 专门获取/设置input里的内容
		获取:input.value;
		设置:input.value="新内容";
2、属性:
	获取属性值:elem.getAttribute("属性名");
	设置属性值:elem.setAttribute("属性名","属性值");

	简化版:
		获取属性值:elem.属性名;
		设置属性值:elem.属性名="属性值";
		简化版的缺点:
			1、class必须写为className - ES6(2015年)class变成了一个关键字
			2、不能操作自定义属性
3、样式:
	使用样式的方式:3种
		1、*内联样式
		2、内部样式表
		3、外部样式表 - 一阶段做开发用的都是外部样式表
	
	二阶段我们就要用js来操作【内联样式】
		1、不会牵一发动全身
		2、优先级最高

	获取样式:elem.style.css属性名;
	设置样式:elem.style.css属性名="css属性值";
4、绑定事件:
	elem.on事件名=function(){
		操作;
		关键字this - 这个
			如果单个元素绑定事件,this->这个元素
			如果多个元素绑定事件,this->当前触发事件元素
	}