1.js的三大核心
js到底能干什么事情(主要目的是为了实现和用户之间的交互行为)
BOM(browser object model浏览器对象模型)
在bom中给我们提供了一整套可以操作浏览器的属性和方法(基本上只要是css不能调整的都属于浏览器的部分)
DOM(document object model文档对象模型)
在Dom中给我们提供一整套可以操作页面元素的属性和方法(基本上只要是css可以调整的都属于文档部分)
ECMAScript (简称ES,他规定了js的语法规则,以后js语言要怎么写必须要符合ECMAScript提供的规则才可以)
其实 js的核心就是利用ES语法去操作DOM和BOM。
2.js的书写位置
行内式:不推荐(不方便维护,不方便观看)
1)a标签的行内式
语法:在a标签的href属性中写javascript:这里可以写js语句;
先了解一个js的输出语句:alert(你要打印的文本内容)
注意点:
alert的小括号中如果写的是数字:引号可不加
小括号中如果写的是非数字:引号必须加,可以是单引号,也可以是双引号(一般如果外部是双,内部就单,如果外部是单,内部就双)
注意:非数字当中,只要这个单词是变量名字也不能加引号
2)非a标签的行内
首先需要给非a标签添加一个行为属性(行为属性有很多,比如鼠标单击、双击、滑过等等,我们今天先学习一种:单击即可)
单击属性的写法:只需要在标签名字之后写一个οnclick=""即可,引号中间就是书写js语句的地方
内部式(内嵌)
只需要创建一个script标签即可,这个标签可以写在html文件的任何为止
一般推荐:可以写在body的最后面 html的最后面
注意点:
1.script标签中的代码,网页一运行就会立即执行
2.script标签可以写多个,从上到下依次执行。
外部式(外链)
需要单独创建一个后缀名为.js的文件,这个文件中就是写js语句的地方
需要通过script标签上的src属性引入外部文件
注意点:
1.一个文件既可以多个内部式,也可以写多个外部式,按照从上到下依次执行
2.只要script标签带了src属性,就会认为式外部式的,script标签里边书写的代码是不会被执行的
3.js的注释
单行注释:// (快捷键:ctrl+/)
多行注释:/*被注释的内容*/(快捷键:shift+alt+a)
4.变量
在程序运行过程中,用来记录数据的一个量(可以理解成变量就是用来存储数据的一个容器)
比如现在想让你计算一个人的总分数和平均数
这个人的 英语:50 数学:80 语文:100
总分:50+80+100(把值赋值给x)
平均分:(50+80+100)/3====x/3
在计算平均分的时候又写了一边总分的式子,比较麻烦,假设这个时候我创造一个x变量用来保存总分,那么将来只要用总分的时候只需要用x即可
创造的变量的语法:var 变量的名字 = 值
var是创造变量的关键字,告诉浏览器我这里要写一个变量了,你帮我记着
变量的名字:你自己随便去起
=:用来做赋值的,把右边的赋值给左边的
值:就是这个变量名中要保存的数据
5.定义变量的几种语法
// 语法一:只定义不赋值 var 变量名
var x
// 语法二:定义并赋值 var 变量名 = 值
var y = 10;
// 语法三:利用一个var定义多个变量,不赋值 var 变量名1,变量名2.。。。。
var a, b
// 语法四:利用一个var定义多个变量并赋值 var 变量名1=值1,变量名2=值2.。。
var c = 10, d = 20
// 语法五:利用一个var定义多个变量,有的赋值有的不赋值 var 变量名1=值1,变量名2,变量名3=值3。
var e = 10, f, g = 30
6.变量中存值的问题
注意:一个变量只能存储一个值。如果再次重新给变量赋值,这个新的值会把旧的值给覆盖掉。
7.js中的三种输出(打印)语句
alert(输出的内容)====在浏览器中弹出一个框
console.log(输出的内容)====会将结果输出到控制台
document.write(输出的内容)====会直接把内容输出到网页之上(显示在网页的大白板上)
8.变量名的命名规则和规范
规则:必须要遵守的,不遵守就报错
1.变量名可以使用数字、字母、_、$
2.数字不能开头(1a错误的 a1:正确的)
3.js严格区分大小写(a 和 A是2个变量)
4.不能使用关键字和保留字
关键字:就是被js征用的单词,目前正在使用的
保留字:js目前并没有使用但是未来计划使用的单词
规范:可遵守可不遵守
1.变量名语义化(见名知意)(比如起用户名就可以使用username、密码password、年龄age)
2.驼峰命名(名字如果又2个或2个以上的单词组合而成,从第二个单词开始首字母大写)userName
9.数据类型
(变量是用来存储数据的,我们也要知道变量中到底存的是什么类型的数据)
基本(简单)数据类型:
1)数值型Number
整数
小数
科学计数法:e5
进制表示法:二进制(就只有0和1 会在二进制数字前加0b) 八进制(0-7会在二进制数字前加0o) 十进制(0-9) 十六进制(0-9a-f会在二进制数字前加0x)
infinite:正无穷
2)字符串类型String
只要用引号包裹的都是字符串
引号可以是单引号、双引号、反引号
3)布尔类型Boolean
只有2个值:分别是true和false
true:表示真,正确,在计算机存储的时候按照1进行存储
false:表示假,错误,在计算机存储的时候按照0进行存储
4)空Undefined:表示没有
理解:这里本来应该有,但是没有(以放杯子为例子:根本就没放杯子)
5)空Null:表示空
理解:这里真的有一个值就是null,这个值就是一个空值(以放杯子为例子:放了一个空杯子,杯子里面没水)
复杂(引用)数据类型:后面文章学习
10.检测数据类型
语法一:typeof 你要检测的变量
语法二:typeof(你要检测的变量)
注意:2个typeof连用打印结果一定是字符串
注意:以后检测的如果是一个式子,推荐使用小括号的写法。