JavaScript部分基础知识点

1.alert控制浏览器弹出一个警告框
document.write()向body中输出一个内容
console.log()向控制台输出一个内容

2.js编写位置
可以将js代码编写到外部js文件中,然后通过引入script标签引入
写到外部文件中可以在不同的页面中同时使用,也可以利用到浏览器的缓存机制
推荐使用
–>
script标签一旦用于引入外部标签,就不能再编写代码了
若需要则可重新创建一个新的script标签编写内部代码

可以将js代码编写到标签的onclick属性中
点击按钮后才会执行

	 虽然可以写在属性中,但属于结构与行为耦合,不方便维护,不推荐使用

3.基本语法:
JS注释:(多行),//单行注释
JS中严格区分大小写
JS中每一条语句以(;)结束
如果不写,浏览器会自动添加,但会消耗系统资源
而且可能加错,所以必须写
JS会忽略多个空格和换行,可以利用空格和换行对代码进行格式化

  1. 字面量:不可改变的数值,
    1 2 3 4 5
    都是可以直接使用,但一般不直接使用

         变量:可以用来保存字面量,值可以任意改变
    
  2. 标识符:
    可以有字母,数字,_,$
    不能以数字开头
    不能是ES中的关键字或保留字
    一般采用驼峰命名法:
    首字母小写,每个单词开头字母大写,其余字母小写:helloWorld

     	   JS底层保存标识符时实际上是采用的Unicode编码
     	   所以理论上讲,所有的utf-8含有的内容都可以作为标识符
    
  3. 数据类型:字面量的类型(六种)
    string字符串
    使用引号括起来,若不加就是变量
    引号不能嵌套,但可以使用转义字符
    " : "
    ’ : ’
    \n :换行
    \ :
    number数值
    boolean布尔值
    null空值
    undefined未定义
    object对象

     	除了object是引用数据类型,其余都是基本数据类型
    
  4. 标识符:
    可以有字母,数字,_,$
    不能以数字开头
    不能是ES中的关键字或保留字
    一般采用驼峰命名法:
    首字母小写,每个单词开头字母大写,其余字母小写

  5. 使用运算符typeof检查变量的类型
    语法: typeof 变量
    返回结果:字符串string
    数值number

     	JS中可以表示数字的最大值
     	Number.MAX_VALUE:
     	  1.79769……+308
     	 如果使用number表示的数字超过了最大值,则会返回一个
     	 infinity
     	  表示正无穷
     	 -infinity
     	  表示负无穷
     	  NaN
     	  不是数字
     	  使用typeof检查infinity也会返回number
    
  6. boolean:true/false,
    用typeof检查infinity也会返回boolean

  7. 强制类型转换:
    将其他的数据类型转换为:string number boolean

    	转换为string数据类型:
    	   方式1:调用被转换数据类型的toString()方法
    	         该方法不会影响到原变量的值
    			null和undefined这两个值没有toString方法,若调用,则报错。
    	   方式2:调用string()函数,并将被转换的数据作为参数
    
  8. 将其他的数据类型转换为number
    方式:
    使用Number()函数
    -字符串–>数字
    1.如果直接是纯数字的字符串,则直接转
    2.如有非数字的内容,则转换为NaN
    3.如果字符串是一个空串或一个全空格的字符
    -字符串–>数字
    true:1;
    false:0.
    null–>数字:0
    undefined–>数字

    		调用parseInt()函数将a转换为Number
    		parseInt()函数可以将一个字符串中有效的整数内容取出来
    	parseInt()和parseFloat()作用类似,不同的是他们获得的有效小数
    
  9. 将其他类型转换为Boolean
    使用Boolean()函数
    -数字–>布尔:除了0和NaN,其余都是true
    -字符串–>布尔:除了空串,其余都是true
    -null,undefined都会转换为false
    -对象也会转换为true

  10. 运算符也叫操作符
    通过运算符可以对一个或多个值进行运算,并获取运算结果
    比如typeof就是运算符,获得一个值的类型
    它会返回该值的字符串类型:
    number string boolean unfined object

    	   算数运算符:+ - * /  %
    	     对非number值,先转换为number类型再计算
    		 任何值与NaN作运算都得NaN
    		 
    	   任何值与字符串相加都会转换为字符串,并做拼接返回
    		    所以可以将任意数据类型转换为string
    

    这是一种隐式的类型转换,由浏览器自动生成,实际上它也是调用String()函数

    	   除了加法,其他的都是转换为number再计算
    	      可以通过为一个值-0 *1 /1来将其转换为Number
    		  原理和Number()函数一样,但更简单
    
  11. 一元运算符:只需要一个操作数
    负号:对数字进行取反

    	对非number类型的值:
    	    先转化为number,再运算
    		可以对一个其他类型使用+,将其转换为number类型
    
  12. 逻辑运算符:
    ! 非:对布尔值进行取反操作
    对非布尔值先转换为布尔值,再计算
    可以利用此特点将其他数据类型转换为布尔类型
    可以为一个任意数据类型取两次反,来将其转换为布尔值
    原理和Boolean()函数一样

    	&& 与:对符号两侧的值进行与运算并返回结果
    	      全true则true,有一个false则false
    	      如果第一个值为false,则不再检查第二个
    	
    	|| 或:对符号两侧的值进行或运算并返回结果
    	      全false则false,有一个true则true
    	      如果第一个值为true,则不再检查第二个
    
  13. && || 非布尔值的情况
    先将其转换为布尔值,然后再运算,并且返回原值

    	 与运算:true && true:返回后者
    	        如果第一个值为false,则返回第一个值
    	        如果第一个值为true,则返回第二个值
    			
    	 非运算:两个值都为false,则返回前者
    	        如果第一个值为true,则返回第一个值
    	        如果第一个值为false,则返回第二个值
    
  14. 赋值运算符:
    =
    +=

  15. 关系运算符:
    比较两个值之间的大小关系
    成立,返回true
    不成立,返回false

    	> >=  <  <=
    	非数值:将其转换为数值,再比较
    

    如果符号两侧都是字符串,则不会转换为数字,而是直接比较两者的Unicode编码
    一位一位进行比较,如果两位一样,则比较下一位
    比较两个字符串的数字时,一定要转型
    任何值与NaN作比较,都是false

  16. 在字符串编码中使用转义字符输入Unicode编码
    \u四位编码
    在网页中使用Unicode编码
    &#编码;(十进制的编码)

  17. ==
    undefined衍生自null
    所以这两个值做比较时,会返回true

    NaN不和任何值相等,包括它本身
    
    != 不相等
    ===  全等:和==类似,但其不会进行自动类型转换
              如果两个值类型不同,直接返回false
    !==  
    
  18. 条件运算符也叫三元运算符
       语法:
       条件表达式?语句1:语句2
        求值:true,执行语句1,返回结果
    	     false,执行语句2,返回结果
    
  19. 程序由一条条语句构成
    语句自上向下执行
    在js中可以使用{}为语句分组,即代码块,同时执行或者不执行
    在代码块后边不用再编写;了

    	JS中的代码块只具有分组作用,没有其他的用途
    	 代码块内容的内容,在外部是完全可见的
    
  20. prompt()可以弹出一个提示框,会带有一个文本框
    用户可在文本框输入内容,该函数需要一个字符串作为参数
    该字符串将会作为提示框的提示文字

    用户输入的内容将会作为函数的返回值返回,可以定义一个变量来接收该内容

  21. 程序由一条条语句构成
    语句自上向下执行
    在js中可以使用{}为语句分组,即代码块,同时执行或者不执行
    在代码块后边不用再编写;了

    	JS中的代码块只具有分组作用,没有其他的用途
    	 代码块内容的内容,在外部是完全可见的
    
  22. 流程控制语句:
    语句的分类:
    1.条件判断语句
    2.条件分支语句
    3.循环语句

    	条件判断语句:
    	   使用条件语句可以在执行某个语句之前进行判断
    	   成立才执行
    	  -if语句
    	   语法一:
    	     if(条件表达式)
    		    语句
    			if语句在执行时,会先对条件表达式进行求值判断
    			为true才执行if后面的语句
    		if语句只能控制紧随其后的那条语句(可放入代码块)
    		
    		语法二:
    		   if(条件表达式){
    			      语句……
    			   }else{
    				  语句……
    			   }
    			   
    		if……else……语句
    		当该语句执行时,会先对if后的条件表达式进行求值判断
    		为true,则执行if后的语句
    		为false,则执行else后的语句
    		
    		语法三:
    		   if(条件表达式){
    			      语句……
    			   }else if{
    				  语句……
    			   }}else if{
    				  语句……
    			   }else{
    				   语句……
    			   }
    			   
    		if……else……if……else……语句
    		当该语句执行时,会先对if后的条件表达式进行求值判断
    		为true,则执行if后的语句
    		为false,则执行else后的语句
    

你可能感兴趣的:(前端,javascript)