JavaScript学习笔记整理(一)

82 阅读4分钟

基础

1.变量:变量就是一个内存

语法:var 变量名 = 值;

作用:

  1.经常使用的数据,可以提前保存起来
  2.数据是可能被修改的

☆特殊

      Ⅰ 变量名不是随意的:
      a.不能以数字开头 b.不能使用关键字 c.尽量见名知意
      ☆变量有一个很特殊:**name**————不管你保存什么都是一个字符串
      Ⅱ 创建多个变量,可以省略中间的 var ,分号换为逗号
      Ⅲ 等号(=)是赋值符号:等号右边的数据保存在等号左边的变量名之中,左边就单单纯纯的是一个变量名而已

2.常量:一旦创建不可被修改

语法:const 常量名 = 值;

3.☆☆☆数据类型:不同的数据类型,操作也不一样

1、原始/基本/值类型:5Number - 数字,取值:无数个
String - 字符串,取值:无数个
Boolean - 布尔值,取值:2个,表示一个【判断的结果】,truefalse
Undefined - 取值只有一个:undefined - 变量的默认值,undefined没有任何作用
Null - 空,取值1个:null,作用:你用完了的变量(内存),可以用null释放 - 释放内存节约
2、引用/对象类型:11个对象(属性和方法)

4.算术运算符:+ - * / %

 m%n:取余,俗称模,m/n不取商,而且除不尽的余数
 作用:
   1.判断奇偶性
       num%2 == 1 奇数
       num%2 == 0 偶数
   2.获取一个数字的后n位
       1234%10   -> 4
       1234%100  -> 34
       1234%1000 -> 234 
   3.判断一个数字永远不超过几
       num%5 -> 结果永远不会超过5
       

☆☆☆算术运算其实具有隐式数据类型转换,默认都会转为数字运算

 *特殊点*:
 +运算,如果碰到一个字符串,那么两边的数据都会悄悄转换字符串,然后+运算变为拼接操作。
 - * / %其实字符串也可以转为数字,必须是纯数字组成的字符串才行,只要包含一个非数字字符结果则为NaN。

扩展

      1、用户输入框:var user=prompt("提示文字","默认值");
  2、查看数据类型:typeof(变量/值/表达式);
  3、页面上获取到的数据类型都是字符串,如果你就想转为数字:
	parseInt(str) -> 转为整数
	parseFloat(str) -> 转为浮点数
            

分支结构

分支的作用:判断

1、程序的结构:3种

1、顺序结构:默认结构,从上向下依次执行每一句代码
2、分支结构:根据判断条件,选择一部分代码去执行(只会走一条路)
3、循环结构:根据判断条件,选择是否重复执行某一段代码

2、比较/关系运算符:> < >= <= == !=

结果:以上六个运算符结果都为布尔值:truefalse
         往往比较运算符出现在分支、循环的判断条件之中
         其实关系运算符也具有隐式转换。

3、if结构: 语法:

      1、一个条件一件事,满足就做,不满足就不做 但是后续代码还是会执行的
		  if(判断条件){
			操作;
		  }
       2、一个条件两件事,满足就做第一件,不满足就做第二件
		  if(判断条件){
			操作1;
		  }else{
			默认操作;
		  }
       3、多个条件多件事,满足谁就做谁
		  if(判断条件1){
			操作1;
		  }else if(判断条件2){
			操作2;
		  }else{
			默认操作
		  }
    强调:
	  1、最后的else是可以省略的,但如果条件都不满足,则分支白写
	  2、条件有时候写的顺序需要注意,因为分支只会走一条路
 

☆☆☆☆☆函数

Function基础:也称之为方法

例子:

    url(图片路径):完成了一个根据图片路径显示图片的功能
rotate(90deg):完成了一个根据角度值顺时针旋转45度的功能
    js的自定义函数:完成了一个......功能

1、什么是函数:

函数(Function)是一段被【预定义好的】,可以【反复使用】的代码是个独立的功能体,可以将【若干】的代码放在里面。

2、语法:2部分

            1、创建函数/方法
		function 函数名(){
			//若干代码段
		}
	    2、调用函数/方法
		函数名();//程序员写几次就调用几次
		小技巧:绑定在页面元素之上,用户来触发了
		<elem onclick="js语法"></elem>

3、什么东西适合放在函数之中?

        1、不希望打开页面立刻执行,等用户来触发
	2、不希望只执行一次,可以反复触发
	3、本身就是一个独立的功能体:你写的每一个作业都是一个独立的功能体
	4、建议:以后每一个作业都要封装为一个函数:函数在js中具有第一等公民的地位,函数中的变量都是会自动释放的。

4、带有参数的函数:

	榨汁机 - function:功能:榨汁
	原材料 - 参数:放入一个苹果、梨子、香蕉...
	如何创建带参数的函数:
            
		function 函数名(形参,...){
                    //形参(形式参数)其实就是一个变量,只不过不需要var
			函数体;
		}
                    
	调用带参数的函数的时候:
		函数名(实参);//实际参数
		function zzj(fruit){
			console.log("榨"+fruit+"汁");
		}
		zzj("苹果");
		zzj("梨子");
 强调:
     1、传入实参的顺序一定要和形参的顺序对应上
     2、函数不一定非要有参数:
            Ⅰ、如果你的操作是固定的,则不需要传递参数
            Ⅱ、根据传入的实参不同,做的操作略微不同,则需要添加参数           

扩展

 逻辑运算符:
        &&:与(并且)
    只有全部条件都为true,最后结果才为true
    只要有一个条件为false,最后结果就为false
        ||:或
    只有全部条件都为false,最后结果才为false
    只要有一个条件为true,最后结果就为true
         !:颠倒布尔值:
	!true -> false
	!false -> true