发表于: 2020-03-04 22:27:53
0 1602
今天完成的事情:
学习基础知识
明天计划的事情:
继续学习
遇到的问题:
暂时无
收获:
数据和数据类型
数据:有用的信息
数据类型:数据的分类
本节课学习的是:不同类型的数据的字面量表示法
JS中的数据类型
学习JS中,不同数据类型的数据书写方式
原始类型(基本类型)
原始类型指不可再细分的类型
- 数字类型 number
直接书写即可
了解: 数字类型可以加上前缀,来表示不同的进制 0:表示八进制 0x: 表示16进制 0b:表示2进制
- 字符串类型 string
字符串:表示一长串文(0个或多个)
- 单引号'
- 双引号"
- 模板字符串`` ESC按键下 可以换行
在字符串中,如何表示一个特殊字符,可以使用转义() 斜杠单引号表示普通的单引号 用俩个斜杠表示一个普通的斜杠 \n 表示换行 \t 表示制表符 缩进一格
- 布尔类型 boolean
布尔类型用于表达真或假俩种状态
- true 表示真
- false 表示假
- undefined类型
表示未定义,不存在
只有一种数据书写方式:undefined
- null类型
表示空,不存在
只有一种书写方式:null
区分某些长数字和字符串:如果按照数字的方式阅读,则使用数字类型;否则使用字符串类型
引用类型
- 对象 Object (事物)
可以认为,对象,是由多个基本类型组合而成
属性:对象的成员
得到数据的类型
在数据前加上 typeof
JS的bug(特征): typeof null,得到的是object
字面量
直接书写的具体的数据,叫做字面量
- 函数(后续章节专门讲解)
作业
变量和对象
原始类型: number、string、boolean、null、undefined
引用类型: object、function 函数
在变量中存放对象
- 通过变量,读取对象中的某个属性
变量名.属性名
当读取的熟悉不存在时,会得到undefined
当读取属性的对象不存在(undefined 或 null)时,程序报错
- 通过变量,更改对象中的某个属性
当赋值的属性不存在时,会添加属性
原始类型undefined中不可以有属性
- 删除属性
delete 变量名.属性名;
4.特殊的属性读取方式(属性表达式)
给属性赋值,或读取属性时,可以说会用下面的格式操作
对象变量["属性名"]
- 某些属性名中包含特殊字符
实际上,JS对属性名的命名要求并不严格,属性可以是任何形式的名字
属性的名字只能是字符串,如果书写的是数字,会自动转换为字符串
全局对象
JS大部分的宿主环境,都会提供一个特殊的对象,该对象可以直接在JS代码中访问,该对象叫做全局对象
在浏览器环境中,全局对象为window,表示整个窗口
全局对象中所有属性,可以直接使用,而不需要写上全局对象名
开发者定义的所有变量,实际上,会成为window对象的属性
如果变量没有被赋值,则该变量不会覆盖window对象上的同名属性
如何使用变量
- 声明(定义)变量
var 变量名;
变量声明后,它的值为undefined
- 给变量赋值
向变量的内存空间中存放数据
- 变量的值是可变的
变量可以被重新赋值,新的值会覆盖原来的值
- 变量的名称
在开发中,凡是需要自行命名的位置,叫做标识符
标识符的规范
- [必]只能以英文字母、下划线、$开头
- [必]其他位置可以出行数字、英文字母、下划线、$
- [必]不可以与关键字、保留词重复
- [选]标志符应该做到望文知意见
- [选]如果有多个单词,使用驼峰命名法,单词首字母大写
大驼峰:每个单词首字母大写 小驼峰:除第一个单词外,首字母大写 目前,使用的标识符都是小驼峰命名法
宽度:width,高度:height,区域:area
-声明和赋值合并
变量的声明和赋值可以一条语句书写
这是语法糖
语法糖仅仅是为了方便代码书写或记忆,并不会有实质性的改变
多个变量可以合并声明并赋值
任何可以书写数据的地方,都可以书写变量
若使用一个未声明的变量,会导致错误
例外:使用typeof得到类型时,可以是未声明的变量
- JS中存在变量提升
所有变量的声明,会自动的提到代码的最顶部
console.log(a);//Undefinedvar a=1;//等效于var a;console.log(a);//Undefineda=1;
但是,这种提升,不会超越脚本块
- JS中允许定义多个同名变量
同名变量,提升后会变成一个
变量和对象
原始类型: number、string、boolean、null、undefined
引用类型: object、function 函数
在变量中存放对象
- 通过变量,读取对象中的某个属性
变量名.属性名
当读取的熟悉不存在时,会得到undefined
当读取属性的对象不存在(undefined 或 null)时,程序报错
- 通过变量,更改对象中的某个属性
当赋值的属性不存在时,会添加属性
原始类型undefined中不可以有属性
- 删除属性
delete 变量名.属性名;
4.特殊的属性读取方式(属性表达式)
给属性赋值,或读取属性时,可以说会用下面的格式操作
对象变量["属性名"]
- 某些属性名中包含特殊字符
实际上,JS对属性名的命名要求并不严格,属性可以是任何形式的名字
属性的名字只能是字符串,如果书写的是数字,会自动转换为字符串
全局对象
JS大部分的宿主环境,都会提供一个特殊的对象,该对象可以直接在JS代码中访问,该对象叫做全局对象
在浏览器环境中,全局对象为window,表示整个窗口
全局对象中所有属性,可以直接使用,而不需要写上全局对象名
开发者定义的所有变量,实际上,会成为window对象的属性
如果变量没有被赋值,则该变量不会覆盖window对象上的同名属性
评论