一、js简介
1、
- JavaScript 是世界上最流行的语言之一,是一种运行在客户端的脚本语言 (Script 是脚本的意思)
- 脚本语言:不需要编译,运行过程中由 js 解释器( js 引擎)逐行来进行解释并执行
2、JavaScript组成
a、ECMAScript:ECMAScript 规定了JS的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准。
b、DOM:文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过 DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。
c、BOM:BOM (Browser Object Model,简称BOM) 是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。
3、JavaScript特点
a、解释型语言:不需要被编译为机器码再执行,而是浏览器直接执行。不需要编译这就使开发较轻松,不过解释型语言的运行速度较慢。
b、动态语言:当你声明一个变量时,你不会定义它的类型。在代码执行过程中,它的类型可以更改,让一个变量可以有多种不同的类型。
c、简单弱类型:变量的类型需要在运行时才能确定。
d、安全性:JavaScript需要通过浏览器运行,它不允许访问客户端的文件,也不允许操作服务器数据。
e、类似于c和Java的语法结构
f、基于原型面向对象:JavaScript 通过一种叫做 原型( prototype ) 的方式来实现面向对象编程。
g、严格区分大小写
h、跨平台性JavaScript的执行与操作环境无关,只要能运行浏览器的设备就可正确执行。
4、js使用
a、行内格式
<input type="button" value="点我试试" onclink="javascript:alert('Hello World')" />
可读性差,在 HTML 中编入 JS 大量代码时,不方便阅读,特殊情况下使用
b、内嵌格式
<script>
alert('Hello World!');
</script>
可以将多行JS代码写到<script>
标签中,内嵌 JS 是学习时常用的方式
c、外部js
<script src="my.js"></script>
- 利于HTML页面代码结构化,把单独JS代码独立到HTML页面之外,既美观,又方便
- 引用外部JS文件的script标签中间不可以写代码
- 适合于JS代码量比较大的情况
二、基本语法
1、注释
a、单行注释(快捷键ctrl+/)
//单行注释
b、多行注释(快捷键ctrl+shift+a)
/*
多行注释
*/
2、js的输入输出
- 使用window.alert()写入警告框
- 使用document.write()写入HTML输出
- 使用console.log()写入浏览器控制台
3、字面量和变量
a、字面量
字面量实际上就是一些固定的值,比如:1、2 、3、true、false、null、NaN、“hello”,字面量都是不可以改变的,由于字面量不是很方便使用,所以在JavaScript中很少直接使用字面量,使用的而是变量。
b、变量
变量是用于存放数据的容器,我们通过变量名获取数据,甚至数据可以修改。比如我们的程序中有一个值123,这个值我们是需要反复使用的,这个时候 我们最好将123这个值赋值给一个变量,然后通过变量去使用123这个值。
-
变量的声明
- 整型: var a=10;
- 非整型:var b=10.1;
- 字符串: var c="abc";
- 布尔类型: var d=true;
注:JavaScript里面不管声明什么类型的变量,都是通过“var”来声明
-
变量的调用:
var a=10
var b="20"
document.write("a和b相加的和:"+(a+b))
- 变量名需要遵守以下规则
组成字符可以是任何字母、数字、下划线或美元符号
数字不能开头
严格区分大小写
不能是关键字,保留字。例如:var,for,while
遵循驼峰命名法
4、数据类型
JavaScript中分为:原始类型和引用类型
5种原始类型:
number:数字(整数、小数、NaN(not a number))
string:字符,字符串,单双引皆可
boolean:布尔,true,false
null:对象为空
undefined:当声明的变量未初始化时,该变量的默认值是undefined
使用typeof运算可以获取数据类型:alert(typeof age);
5、运算符
JavaScript 中常用的运算符有:
- 算数运算符
- 递增和递减运算符
- 比较运算符
- 逻辑运算符
- 赋值运算符