【Java Web_03】ECMA Script

2021-02-04 10:09:32 浏览数 (1)

一、概述

1. 什么是javaScript
代码语言:javascript复制
* 客户端脚本语言,不能独立运行
2. JavaScript是干啥的
代码语言:javascript复制
* HTML:控制网页内容
* CSS:控制网页样式
* JS:控制网页行为 

二、ECMAScript

1. 与HTML结合方式
代码语言:javascript复制
① 内部
    * <script> </script>
② 外部
    * <script type="text/javascript" src="URL"></script>
③ 位置
    * 可以出现在任何地方,一般位于 body 最后,便于资源加载
2. Script基本语法
代码语言:javascript复制
① 注释
    //单行注释
    /*多行注释*/
② 数据类型
    * number:数字/NaN(不是数字的数字)
    * string:字符串
    * boolean:布尔
    * null: 空,占位符
    * undefined:未定义
③ 变量
    * var 变量名
    * script是弱类型语言,开辟变量空间时不指定变量类型,可以存放任意类型的数据
    * typeof():获取数据的类型
        * null 类型得到是 object【古老的bug并未解决】
④ 一元运算符
       、 -- 、  (-)【 (-)会自动进行类型转换】
          "123"  --->  123
          "a123" --->  NaN
⑤ 算数运算符
      、 - 、 * 、 / 、 % 【注意,script中 / 可能有小数】
⑥ 比较运算符
    > 、 < 、 ==(会先进行类型转换,再比较) 、 ===(全等于)
⑦ 逻辑运算符
    && 、 || 、 ! 【没有 & 、| 】
        number:0或NaN为假,其他为真
        string:除了空字符串(""),其他都是true
        null & undefined:都是false
        对象:所有对象都为true
⑧ 流程控制语句
    * 与Java大体一致
    * 特殊
        switch:
            - 在java中,switch语句可以接受的数据类型: byte int shor char,枚举(1.5) ,String(1.7)
            - 在JS中,switch语句可以接受任意的原始数据类型
3. 基本对象
代码语言:javascript复制
① Function
    * 定义
        function f(param) {};
        var f = function(param) {};
    * 注意
        - 方法定义是,形参的类型不用写,返回值类型也不写。
        - 方法是一个对象,如果定义名称相同的方法,会覆盖
        - 在JS中,方法的调用只与方法的名称有关,和参数列表无关
        - 在方法声明中有一个隐藏的内置对象(数组),arguments,封装所有的实际参数
② Match
    * random
        产生[0,1)的伪随机数
    * ceil
        向上取整
    * floor
        向下取整
    * round
        四舍五入
③ Array【类似于ArrayList<Object>】
    * 定义
        var arr = new Array();
        var arr = [];
    * 方法
        push:向数组中加入一个数据
        join(xx):以参数分隔符将数组拼接为字符串返回
    * 特点
        变长【属性:length】
④ Data
    * 定义    
        var time = new Data();
    * 方法
        toLocaletionString:将日期格式转为本地格式的字符串
        getTime:获取当前时间到1970-1-1 00:00:00 00 的毫秒值
⑤ RedExp
    * 正则表达式:定义字符串的组成规则。
        - 单个字符:[]
            如: [a] [ab] [a-zA-Z0-9_]
            特殊符号代表特殊含义的单个字符:
                d:单个数字字符 [0-9]
                w:单个单词字符[a-zA-Z0-9_]
        - 量词符号:
            ?:表示出现0次或1次
            *:表示出现0次或多次
             :出现1次或多次
            {m,n}:表示 m<= 数量 <= n
                 m如果缺省: {,n}:最多n次
                 n如果缺省:{m,} 最少m次
        - 开始结束符号
             ^:开始
             $:结束
    * 正则对象:
        - 创建
            var reg = new RegExp("正则表达式"); //不推荐使用
            var reg = /正则表达式/;
        - 方法    
            test(参数):验证指定的字符串是否符合正则定义的规范    
⑥ Global
    * 特点:全局对象,这个Global中封装的方法不需要对象就可以直接调用。
    * 方法:
        - encodeURI():url编码
        - decodeURI():url解码

        - encodeURIComponent():url编码,编码的字符更多
        - decodeURIComponent():url解码
 
        - parseInt():将字符串转为数字
            * 逐一判断每一个字符是否是数字,直到不是数字为止,将前边数字部分转为number
        - isNaN():判断一个值是否是NaN
            * NaN六亲不认,连自己都不认。NaN参与的==比较全部为false
        - eval():传入 JavaScript 字符串,并把它作为脚本代码来执行。

推荐阅读 ECMAScript 6

0 人点赞