JavaScript基础知识

1. 什么是JavaScript?什么是脚本语言?什么是编程语言?
    a. JavaScript是网络的一种脚本语言
    b. 脚本语言: 不能独立运行,必须嵌入到其他语言中执行,JavaScript是被浏览器解析执行的,无需编译,直接运行
    c. 编程语言: Java是编程语言,独立写出程序,需要经过编译和运行阶段

2. JavaScript 有什么作用?
    可以修改 css样式、验证表单、检查浏览器等页面效果的控制作用。
    例如: 
        人 ---> 身体 -------> HTML
        人 ---> 衣着 -------> CSS
        人 ---> 灵魂、大脑 ----> JavaScript
JavaScript 不需要经过编译,从上到下依次加载执行。
JavaScript有哪几部分组成,各自有什么作用?
     a. 核心(ECMAScript) 定义javascript的基本语法     (描述了该语言的语法和基本对象)
        b. 文档对象模型(DOM) 操作HTML文档                (描述处理网页内容的方法和接口)
        c. 浏览器对象模型(BOM) 操作浏览器                (描述与浏览器进行交互的方法和接口)
JavaScript有哪几部分组成,各自有什么作用?

        a. 核心(ECMAScript) 定义javascript的基本语法     (描述了该语言的语法和基本对象)
        b. 文档对象模型(DOM) 操作HTML文档                (描述处理网页内容的方法和接口)
        c. 浏览器对象模型(BOM) 操作浏览器                (描述与浏览器进行交互的方法和接口)
A. JavaScript的引入方式:
    a. 内部脚本
    b. 外部引入 <script src="js文件路径名称.js"> </script>

B. 注意事项
    a.如果我们采用了外部引入的方式,就不要使用内部脚本了。
    b.<script>标签可以写在HTML的任意位置
A. script 标签放置的位置规范化应该放置在 <body>标签之前. 目的:保证HTML的内容优先加载,提升用户体验
B. 在学习阶段,为了提高代码的可阅读性,我们将 script 标签放置在 <head> 标签当中
JavaScript的注释和Java语言的注释一样,都存在单行注释// 和 多行注释 /**/
    A. 单行注释 //          快捷键 Ctrl + /
    B. 多行注释 /**/        快捷键 Ctrl + Shift + /
1. 所有的变量都使用 var 关键字。
    例如: 
        var a = "我的剑就是你的剑";
        var b = 10086;
        var c = 13.14;
        var d = true;    

2. 命名规则和java语言是一样的,注意严格区分大小写
3. 如果变量未定义直接使用,那么会出错,将不会执行此项代码
A. 在JavaScript当中的基本上数据类型:
    1. string 字符串 单引号和双引号统称为字符串
    2. boolean 布尔  true 和 false
    3. number 数值   整数和小数
    4. null   空
    5. undefined 未定义
A. 在JavaScript区分于Java,是弱类型语言,变量的使用 不严格遵循规范,可以赋予不同类型的值
B. 为了区分不同类型的数据值,可以使用 typeof 运算符.其返回值类型就是 当前的数据类型
C. 注意点: null 的typeof运算之后,返回值类型是 object.原因是由于 ECMAScript 最开始错误导致的.无需深究.相当于古时通假字一样.
A.引用数据类型介绍
    JavaScript中的引用数据类型和Java当中的基本一致。引用类型通常叫做类(class)他的实例就是 对象。
    在Java当中的基本数据类型对应的都有一个对象.
    例如:
        在java当中 
            int ---> Integer
        在javaScript当中
            boolean ---> Boolean
            number ----> Number
            string ----> String

B. JavaScript当中创建对象的方式
    a. 格式一:  【推荐使用】
        var o = new  Obeject();
    b. 格式二: 如果没有参数,小括号可以省略 js语法特有
        var o = new Object;
 比较运算符 == 和 === 的区别:
    ==  只是比较变量值,不去比较数据类型
    === 既要比较变量值,同时还要比较数据类型.只有两者同时满足的情况下,才是true

常见的比较运算符
    ==      等于 
    ===     全等(值和类型)
    !=      不等于
    >       大于 
    <       小于
    >=      大于或等于
    <=      小于或等于 

在JavaScript的逻辑运算符当中,没有 & 和 |

常见的比较运算符
    &&      逻辑与 and 
    ||      逻辑或 or
    !       逻辑非 not
直接量方式:  /^ 正则表达式 $/
这是一个正则对象,不是一个字符串,不要用引号包裹。是用一对 / 包裹,^表示正则开始 $表示正则结束。

使用这种对象的test(string)方法,返回值为true表示符合规则,
使用直接量方式验证的时候只要有一个字符不符合正则规则,test(string)方法就返回false,适用于表单校验。

普通方式: /正则表达式/
在验证的时候,只要有一处完全符合正则的要求,那么就返回true 
校验不严格,懒人思想,适用于查找和替换等操作.
JavaScript的数组和我们java里面的list集合优点类似。
特点: 
    1. 数组的长度不固定
    2. 数组可以存放任意的数据类型

创建数组的四种方式:
    方式1:  var arr01 = ["a",66,true];
    方式2:  var arr02 = new Array();
    方式3:  var arr03 = Array(5);
    方式4:  var arr04 = new Array("a",66,true);
A. 获取数组长度的操作  arr.length
B. 获取数组当中每一个元素 arr[索引] 
A. join()方法 把数组的元素放入到字符串当中,通过制定的元素进行连接,对原始数组无影响
B. reverse()方法  将数组的元素进行物理翻转,翻转之后对原始数组有影响
A. pop()方法,删除数组的最后一个元素,并且将删除的最后一个元素返回
B. push(元素,元素)方法, 可以向数组的末尾添加一个或者多个元素.返回数组当前最新的长度
A. eval(String) 要计算的字符串,其中含有要计算的JavaScript 表达式或要执行的语句.

B. 作用: eval( ) 函数能够把一个字符串当中 javascript脚本来执行

C. 注意: 这个字符串只能是基本数据类型的字符串,而不是 new String("xxxx");
A. 编码和解码
    a. 编码操作:  encodeURI(String)
    b. 解码操作:  decodeURI(String)

B.URI和URL
    a. URI 统一资源标识符. 包含了资源名称
    b. URL 统一资源定位器. 以"http://"开头

例如:
    http://www.itcast.cn/       是UL
    /a.html                     是URI
    http://www.itcast.cn/a.html 既是URL,也是URI
A. 编码和解码
    a. parseInt(string)     字符串-->整数  
    b. parseFloat(string)   字符串-->小数(浮点数)

B.注意事项
    a.从左往右看.满足数值类型的保留.不满足的舍掉
    b.标志 NaN 含义提示不是一个数字 Not a Number 
A. 函数的格式:
    function 函数名(参数1,参数2...){
        //这里写要执行的代码
        return xxx; //如果有需要的话,最后就是返回值
    } 

B. 注意事项
    a. JavaScript是弱类型的语言,变量的申明都是使用var关键字,所以返回值类型和参数不需要使用 var
    b. 返回值类型,如果需要返回结果,直接使用return关键字返回就行了,这一点和java一样.
    c. function 单词是小写,不要写成大写
A. 三个注意事项
    a. JavaScript函数其实都有返回值的,返回值由return决定.如果没有写 return或者只是写return,那么返回值就是 undefined.

B. javaScript中对于同名的函数,不存在重载,只有覆盖.值保留最后一个函数.

C.JavaScript中调用一个函数.只看函数名.不考虑参数的数量.即使函数2个参数.但是你调用该函数时.没有传入参数,那也没有关系
A.自定义对象的格式:
    a.【不带参数】    function  Animal() { ...... }
    b.【带有参数】    function  Person(name,age) { ...... }

B.定义属性并且使用
    a.无参构造. animal.name = "旺财";
    b.带参构造. var p = new Person("老王",18);

C.函数的定义和调用
    a.调用的方式: animal.run("旺财",10);
    b.声明的方式: this.run = function(name,age){ ... }
A.自定义对象
    a.格式:
        var 对象名称 = { 属性名称:属性值 };
    b.例如:
        var person = { name:"小李",age:18};


B.定义属性并且使用
    a.设置属性值
        对象名称.属性名称 = 修改值;
        person.name = "老王";
    b.获取属性值
        var 属性 = 对象名称.属性名称;
        var xname = person.name;
 
 
posted @ 2018-06-02 23:21  吃奶滴虫虫  阅读(98)  评论(0编辑  收藏  举报