JavaEE Day09 JavaScript基础

之前学了html、css两种静态资源
JavaScript是另一种静态资源,今日内容【重点】: JavaScript(是一门编程语言,2days)基础
一、JavaScript简介
1.概念
JavaScript是一门客户端脚本语言
  • 运行在客户端浏览器中
  • 每一个浏览器都有JavaScript的解析引擎(不需要编译)
  • 脚本语言:不需要编译,直接就可以被浏览器解析执行
功能:
  • 可以增强用户和html页面的交互过程,可以来控制html元素,让页面有一些动态的效果,增强用户的体验
2.发展史
JavaEE Day09 JavaScript基础_第1张图片
之前速度慢
  • 1992年,Nombase公司开发出第一门客户端脚本语言,专门用于表单的校验,命名为:C--,后来更名为ScriptEase
  • 1995年,Netscape(网景)公司【做浏览器】,开发了一门客户端脚本语言:LiveScript。后来请来SUN公司的专家,修改 LiveScript,命名为JavaScript
  • 1996年,微软抄袭了JavaScript开发出了JScript
  • 1997年,ECMA(欧洲计算机制造商协会)制定了标准:ECMAScript就是 所有客户端脚本语言的标准
JavaScript=ECMAScript+JavaScript特有的东西(BOM和DOM两类对象)
每种客户端对BOM和DOM对象的实现有所差异
二、JavaScript语法(ECMAScript)
1.基本语法【与Java很接近】
1.1与html的结合方式(两种 )
  • 内部js:定义
1.2注释
  • 单行注释://注释内容
  • 多行注释:/*注释内容 */
1.3数据类型
Java两种:基本数据类型和引用数据类型
JavaScript:原始数据类型和引用数据类型
  • 原始数据类型
    • number:整数、小数/NaN(Not a number一个不是数字的数字类型)
    • string:字符串,如'abc',"a"
    • boolean:true和false
    • null:一个对象为空的占位符
    • undefined:未定义。如果一个变量没有初始化值,则会被默认赋值为undefined
  • 引用数据类型(对象)
1.4变量:一小块存储数据的内存空间
JavaEE Day09 JavaScript基础_第2张图片
JavaEE Day09 JavaScript基础_第3张图片
  • Java是强类型语言,JavaScript是弱类型语言
    • 强类型:在开辟变量存储空间时,定义了空间将来存储的数据类型,只能存储固定类型的数据
    • 弱类型:在开辟变量存储空间时,不定义空间将来的存储数据类型,可以存放任意类型的数据
  • 语法:
    • var 变量名 = 初始化值;



    
    变量
    




JavaEE Day09 JavaScript基础_第4张图片
JavaEE Day09 JavaScript基础_第5张图片
1.5 运算符
  • 一元运算符 :只有一个运算数的运算符,
    1. 如++ --(自增自减),+(正号)
    2. ++(--)在前:先自增/自减,再运算
    3. ++(--)在后:先运算,再自增/自减
    4. 注意:如果运算数不是运算符所要求的类型,js引擎会自动将与运算数进行类型转换
      1. 其它类型转number:
        1. string转number:按照字面值转换,如果字面值不是数字,则转为NaN(不是数字的数字 )
        2. boolean转number:true转为,false转为0
  • 算数运算符 :+ - * 、 %
  • 赋值运算符:=   +=   -=  *=
  • 比较运算符【重点】:> >=     ==    ===【全等于】          
    •   1.类型相同:直接比较                      
      • 字符串:按照字典顺序比较,按位比较,逐一比较,直到得出大小为止                 
    • 2.类型不同:先进行类型转换,再比较                        
      • ===:全等于。在比较之前,先判断类型,如果类型不一样,则直接返回false
      • ===的短路效果,第一步先确定,确定了就不用再继续参与运算了
  • 逻辑运算符:&& ||  !
    • &&:与(短路效果)
    • ||:或(短路效果)
    • !:非
    • 其他类型转boolean
      • number:0或NaN为假,其他为真
      • string:除了空字符串(""),其他都为true
      • null&undefined:都是false
      • 对象:所有对象都为true



    
    逻辑运算符
    



  • 三元运算符:  
    • ?:表达式
    • 语法:表达式?值1?值2;
    • 判断表达式的值,如果是true则取值1,否则取2
1.6流程控制语句
  • if...else...
  • switch...
    • 在java中,switch语句可以接受的数据类型:byte/int short/char/枚举(1.5)/String(1.7)
      • switch(变量):
            case  值:{}
    • 在JavaScript中,什么类型都可以接收,且case后面不用加大括号



    
    switch语句
    




  • while
  • do..while



    
    while语句
    



  • for
1.7 特殊语法
  • 1.语句以分号结尾,如果一行只有一条语句,则可以省略(不建议)
  • 2.变量的定义使用var关键字,也可以不使用【作用范围不同】
    •  用:定义的变量是局部变量
    • 不用:定义的变量是全局变量



    
    特殊语法
    




2..练习:九九乘法表
JavaEE Day09 JavaScript基础_第6张图片



    
    
    99乘法表
    



三、JavaScript对象
1、基本对象
Function对象:函数对象



    
    Function对象
    



Array:数组对象



    
    Array对象
    



Boolean
Date



    
    Date日期对象
    



Math



    
    Math数学对象
    



Number:包装对象
String :包装对象
RegExp:正则表达式对象
  • 正则表达式:定义字符串的组成规则
JavaEE Day09 JavaScript基础_第7张图片
  • 单个字符:[]
    • 如:[a]表示任意单个字符    [ab] a或者b  [a-z]  [A-Z]    [a-zA-Z0-9]
    • 通过特殊符号代表特殊含义的单个字符:
      • \d表示单个数字字符,即[0-9]
      • \w表示单个单词字符,即 [a-zA-Z0-9]
  • 量词符号
    • ?:表示出现0次或1次
    • *:表示出现0次或多次
    • +:出现1次或多次
    • {m,n}表示数量介于m和n之间
  • 如\w*表示任意个字符,\w{6,12}表示字符介于6-12位之间
    • m如果缺省:{,n}表示最多n次
    • n如果缺省:{m,}表示最少m次
  • 开始结束符号:
    • 开始:^
    • 结束:$
  • 正则对象
    • 创建
      • var  reg = new RegExp("正则表达式");
      • var reg = /正则表达式/;
    • 方法
      • test(参数):验证指定的字符串是否符合正则定义的规范



    
    RegExp正则对象
    



Global(位于Function下)
  • 特点:是一个全局对象,这个Global中封装的方法,不需要对象就可以直接调用。 方法名();
  • 方法
  • URL编码:浏览器数据传输协议http中,中文数据想要传送,则需要进行编码
    • 传智播客:word=%E4%BC%A0%E6%99%BA%E6%92%AD%E5%AE%A2
    • 12个字节:UTF8编码
JavaEE Day09 JavaScript基础_第8张图片



    
    Global对象
    



来自为知笔记(Wiz)

你可能感兴趣的:(javascript,java-ee,前端,java,开发语言)