js是什么
- js是一种运行在客户端的脚本语言,最早是在HTML(标准通用语言下是一个应用)网页上使用,用来给html网页增加动态功能。
- 浏览器就是一种运行js脚本语言的客户端,js的解释器被称为引擎,为浏览器的一部分。
JavaScript发展历史(JS)
JavaScript的组成
- ECMASCRIPT: 定义了javascript的语法规范,描述了语言的基本语法和数据类型
- BOM (Browser Object Model): 浏览器对象模型
- 有一套成熟的可以操作浏览器的 API,通过 BOM 可以操作浏览器。比如: 弹出框、浏览器跳转、获取分辨率等
- DOM (Document Object Model): 文档对象模型
- 有一套成熟的可以操作页面元素的 API,通过 DOM 可以操作页面中的元素。比如: 增加个 div,减少个 div,给 div 换个位置等 总结: js就是通过固定的语法去操作 浏览器 和 标签结构来实现网页的各种效果
JavaScript代码的书写位置
- js的书写方式:行内式 、内嵌式、外链式
js定义变量
什么是变量?
变量是计算机内存中存储数据的标识符,根据变量名称可以获取到内存中存储的数据;
- 翻译为大白话,我有一个东西需要暂时存储起来,比如说就是一个数字 100,我把它存放到了变量 a 中,我后续想要使用他的时候就可以直接通过变量 a 获取到数字 100
- 变量其实就相当于一个容器,内部可以存储任意类型的数据,使用变量时,用的是内部存储的数据。
为什么要定义变量?
使用变量可以方便的获取或者修改内存中的数据
如何定义变量
使用var的关键字进行定义,后面必须加上一个空格,空格后面自定义变量名
变量赋值
- 变量定义之后,初始时没有进行赋值,内部有一个默认存储的值叫 undefined(未定义) 表示内部未赋值,但可以存储数据了
- 变量赋值的方式:通过等号 = 赋值,等号右边的值赋值给左边的变量 ==(等号在 JS 中叫做 赋值号;书写时,等号 = 两侧习惯书写一个空格)==
使用变量
直接写变量名即可使用变量;变量在使用前,必须现有定义,如果没有定义,会出现引用错误
变量命名规则(必须遵守)
-
由字母、数字、下划线、$符号组成,不能以数字开头
-
字母区分大小写
-
不能是关键字和保留字
- 关键字指的是js中有特殊功能的小词语,比如var、for等
- 保留字指的是现在没有特殊功能,但是将来新语法中有可能作为关键字使用
变量命名规范(建议遵守的,不遵守不会报错)
-
变量名必须有意义
-
遵守驼峰命名法
-
规范 *尽量不用拼音 *行位分号,推荐加上
数据类型
JS中的值,无论是字面量还是变量,都有明确的类型
-
数据类型分类(以基本数据类型为主)
-
Number 数字类型
- 不区分整数、浮点数、特殊值,都是 Number 类型
-
String 字符串类型
- 所有的字符串都是 String 类型
-
undefined undefined类型
- ndefined本身就是一个数据,表示未定义,变量只声明不赋值的时候,值默认是 undefined
-
Boolean 布尔类型
- Boolean 字面量:只有 true 和 false 两个字面量的值,必须是小写字母
- 计算机内部存储:true 为 1,false 为 0
-
null类型
- null 本身就是一个数据
- 从逻辑角度,null 值表示一个空对象指针
- 如果定义的变量准备在将来用于保存对象,最好该变量初始化为 null
-
Object 对象类型(后续课程详细讲解)--复杂数据类型(应用数据类型)
数据类型检测
-
-
为什么要有数据类型检测?
- JS语言是一门动态类型的语言,变量并没有一个单独的数据类型,而是会随着内部存储数据的变化,数据类型也会发生变化
- 变量的数据类型,与内部存储数据有关
- 将来使用变量时,需要知道内部存储的数据是什么类型,避免程序出错
-
使用 typeof 的方法进行数据检测
- 检测方式:在 typeof 后面加小括号执行,将要检测的数据放在小括号内部
转字符串
1.变量.toString()方法
2.String(变量)方法,有些值没有toString(),这个时候可以使用String()。比如undefined和null
3.+ 号拼接字符串方式
- num + “” ,当 + 两边一个操作符是字符串类型,一个操作符是其他类型的时候,会先把其他类型转换成字符串在进行字符串拼接,返回字符串
转布尔
Boolean(变量)方法
- 转型函数Boolean()可以用于任何数据类型,将其他数据类型转为布尔类型的值
- 转为false:NaN、0、“”空字符串、null、undefined
- 转为true:非0 非NaN数字、非空字符串