JavaScript基础知识点

217 阅读4分钟

秋招太可怕惹!!!同志们加油呀!!!

JavaScript简介

javascript组成

javascript 是一种专为与网页交互而设计的脚本语言

1 ECMAScript(核心 提供核心语言功能) 宿主环境:web浏览器、node、Adobe Flash

2 DOM (文档对象模型 Document Object Model) 提供访问和操作网页内容的方法和接口

3 BOM (浏览器对象模型 Browser Object Model) 提供与浏览器交互的方法和接口

在HTML中使用Javascript

script元素

script元素属性:

1 async 立即下载脚本,下载好执行,不妨碍页面的其他操作(异步,只对外部文件有效)不能保证先后执行顺序

2 defer 脚本立即下载但延迟到文档完全被解析和显示之后再执行 (只对外部文件有效)

3 type text/javascript

4 src 指向外部文件

两种方法:

1 直接在页面body中嵌入javascript代码

方法一:只需为<script>指定type属性,然后将javascript代码放到script元素内部即可
<script type="text/javascript">
    function sayHi(){
        alert("Hi!");
    }
</script>

2 包含外部javascript文件(可维护性,可缓存,适应未来)

方法二:指定src属性,指向外部javascript链接(可以来自外部域文件,需完整URL)
<script type="text/javascript" src="example.js"></script>

只要不存在async和defer属性,浏览器会按照script元素在页面中出现的先后顺序对它们依次进行解析

文档模式

1 混杂模式(若文档开始处没有发现文档类型声明,默认开启混杂模式)

2 标准模式

<!DOCTYPE html>

基本概念

语法

1 区分大小写

2 标识符:指变量,函数,属性的名字,或函数的参数

第一个字符必须是字母,下划线,美元符号
其他字符可以是字母,下划线,美元,数字
采用驼峰格式 第一个字母小写,剩下的每个单词首字母大写

3 注释

单行注释 //
多行注释 /* 多行 */

4 严格模式

顶部添加:
"use strict"

5 语句

语句以分号;结尾
多条语句组合到一起代码块{}

关键字和保留字

1 关键字 一组具有特定用途的关键字,可用于控制语句的开始或结束或者用于执行特定的操作

2 保留字 将来被用作关键字

变量

变量(松散类型:可以用来保存任何类型的数据,每个变量仅仅是一个用于保存值的占位符而已)

1.var message; //可以用来保存任何值;未初始化的变量,会保存一个特殊的值undefined
2. var message = "Hi" //定义变量的同时初始化
3. 如果在函数中使用var定义一个变量,那么这个变量在函数退出后就会被销毁(局部变量),函数外面访问不到
4. 若在函数中定义变量省略var,则定义了一个全局变量
5. 一条语句可以定义多个变量
var message = "hi",
    found = false;

数据类型

5种简单数据类型(基本数据结构): Number,String,Boolean,Undefined,Null

typeof 操作符 (检测给定变量的数据类型)

typeof操作符可能返回下列某个字符串

"undefined" //这个未初始化或未声明
"boolean" //这个值是布尔值
"string"  //这个值是字符串
"number" //这个值是数值
"object" //这个值是对象或null
"function" //这个值是函数

typeof "hi" //"string"
typeof null //"object"

Undefined 类型

Undefined类型只有一个值,即特殊的undefined

var message; // undefined 未初始化
var message = undefined;//显示初始化undefined(没有必要)

Null 类型

Null类型只有一个值 即特殊的值null(表示一个空对象指针)若定义的变量将来用于保存变量,最好将变量初始化为null。

var message = null; //有必要,将来保存对象
alert(undefined == null) //true

Boolean 类型

该类型只有两个字面值:true、false(区分大小写)

虽然字面值只有两个,但ECMAScript中所有类型的值都有与这两个Boolean值等价的值。可以调用转型函数Boolean()。

数据类型 | 转换为true的值 | 转换为false的值

--- | --- | --- |