js
关于执行顺序
- html是按文档流顺序执行
- js里的代码,调用alert、prompt、confirm的代码会优先执行。即alert()和prompt()它们会跳过页面渲染先被执行。其余自上而下顺序执行
字面量
在计算机科学中,字面量在计算机中描述事/物。看到它就知道它是什么类型的字面量
比如1000,是数字字面量
比如‘wlx’,是字符串字面量
比如[1,2,3],是数组字面量
比如{name:"wlx",age:"19"},是对象字面量
比如 true和false是布尔型字面量
小总结:
-
js是什么
js是一门运行在浏览器的编程语言,可以做网页特效,可以做表单验证,可以做数据交互(从服务器里拿数据)
-
js书写位置
行内
内部
外部
内部和外部一般就写在的上方,外链时,开始和结束标签内写的代码会被忽略
-
js的注释
单行// 多行/**/
-
js的结束符
;。可加可不加,根据团队约定来决定
-
js的输入输出语句
输入:prompt( )
输出:alert、document.write( )、console.log( )
2.1变量是什么
变量是计算机存储数据的容器
变量不是数据本身,它们仅仅是一个用于存储数值的容器,可以理解为用来装东西的纸盒子!变量不是数据,是容器!!!
2.2变量的基本使用
变量的声明:
let 变量名
声明时直接赋值也就是变量的初始化 let age = 18
赋值号的左右两侧有空格,专业点
更新变量:
变量是个地址,指向的字面量可以更新、变化
let age = 10
age = 19
为什么现在声明变量用let不用var
var允许重复声明相同变量名的变量,而let不允许
,符号
console.log(age,name)也是可以的,可以用逗号,这样一次打印多个变量
逗号也能用在同时声明多个变量时,但是不建议这样写,为了更好的可读性,提倡一次、一行声明一个。
变量的命名规则与规范
规则:
- 不能是js的关键字
- 由字母、下划线、$、数字组成,且不能以数字开头
- 字母严格区分大小写,age和Age是不同的两个变量名
规范:
- 起名要有意义
- 遵守小驼峰命名法(第一个单词首字母小写,后面单词首字母都大写)
大驼峰就是每个单词的首字母都大写
常量
- 常量也是变量,只是它的值永远不能改变
- 常量用const关键字声明,而不是let
- 常量在声明的时候必须初始化
- 常量不允许二次赋值
- 当我们认为某个数据不需要重新赋值的时候,就使用const
js数据类型
js数据类型整体分为两大类
-
基本数据类型
-
number数字型(整、浮点、NaN)
-
NaN代表一个计算错误,是一个不正确的或者一个未定义的数学操作所得到的结果
例如 'pink' - 2的结果就是NaN,因为字符串减去一个数字2,这个运算js中未被定
义
-
NaN是黏性的,任何对NaN的操作都会返回NaN
例如NaN+2,结果为NaN
-
NaN === NaN 结果为false
-
-
string字符串型
-
boolean布尔型
-
undefined未定义型
-
null空类型
-
-
引用数据类型
- object对象
js是一门弱类型编程语言
弱类型编程语言:对变量不强制定义数据类型。只有赋值了我们才知道它是什么数据类型
强类型编程语言:如java。强制定义类型,每个变量都必须声明类型
算数运算符
+ - * / %
取模时,前数比后数小,结果为前数
2 % 5 = 2
求模常用来判断某数是否能被某数整除
js的 / 结果为小数就是小数。5 / 2 = 2.5
典型的交互效果就散三步:
- 输入
- 内部处理
- 输出
字符串类型
单引号、双引号、反引号引起
注意事项:
-
无论单引号还是双引号,必须成对使用
-
单引号、双引号可以相互嵌套,但不能自己嵌套自己。(口诀:外双内单,外单内双)
-
非要输出单引或双引,记得转义
-
+号在有字符串时,就变成拼接效果。仅数字时,就是加。
'pink'-2结果为NaN,'pink'+2结果是'pink2'
-
模板字符串
用处:方便拼接字符串和变量
语法:反引号包裹,里面的变量用${ }包裹
未定义类型
undefined
只声明了但是未被赋值的变量,默认为undefined
当某个变量需要用户给值时,代码里为了健壮性好,就可以用undefined判断用户是否已给值过来
null 空类型与undefined
undefined表示没有赋值
null表示赋值了,但是内容为空
把null作为尚未创建的对象
console.log(undefined + 1)//结果为NaN
console.log(null + 1)//结果为1
如果一个变量里面确定存放的是对象,但还没准备好这个对象,可以先用null替代着,占着坑
检测数据类型
typeof两种用法:
-
当作运算符
typeof num
-
当作函数
typeof(num)
-