发表于: 2020-03-04 22:27:53

0 1601


今天完成的事情:

学习基础知识


明天计划的事情:

继续学习



遇到的问题:

暂时无



收获:

数据和数据类型

数据:有用的信息

数据类型:数据的分类

本节课学习的是:不同类型的数据的字面量表示法

JS中的数据类型

学习JS中,不同数据类型的数据书写方式

原始类型(基本类型)

原始类型指不可再细分的类型

  1. 数字类型 number

直接书写即可

了解: 数字类型可以加上前缀,来表示不同的进制 0:表示八进制 0x: 表示16进制 0b:表示2进制

  1. 字符串类型 string

字符串:表示一长串文(0个或多个)

  • 单引号'
  • 双引号"
  • 模板字符串`` ESC按键下 可以换行

在字符串中,如何表示一个特殊字符,可以使用转义() 斜杠单引号表示普通的单引号 用俩个斜杠表示一个普通的斜杠 \n 表示换行 \t 表示制表符 缩进一格

  1. 布尔类型 boolean

布尔类型用于表达真或假俩种状态

  • true 表示真
  • false 表示假
  1. undefined类型

表示未定义,不存在

只有一种数据书写方式:undefined

  1. null类型

表示空,不存在

只有一种书写方式:null

区分某些长数字和字符串:如果按照数字的方式阅读,则使用数字类型;否则使用字符串类型

引用类型

  • 对象 Object (事物)

可以认为,对象,是由多个基本类型组合而成

属性:对象的成员

得到数据的类型

在数据前加上 typeof

JS的bug(特征): typeof null,得到的是object

字面量

直接书写的具体的数据,叫做字面量

  • 函数(后续章节专门讲解)

作业

变量和对象

原始类型: number、string、boolean、null、undefined

引用类型: object、function 函数

在变量中存放对象

  1. 通过变量,读取对象中的某个属性
变量名.属性名

当读取的熟悉不存在时,会得到undefined

当读取属性的对象不存在(undefined 或 null)时,程序报错

  1. 通过变量,更改对象中的某个属性

当赋值的属性不存在时,会添加属性

原始类型undefined中不可以有属性

  1. 删除属性
delete 变量名.属性名;

4.特殊的属性读取方式(属性表达式)

给属性赋值,或读取属性时,可以说会用下面的格式操作

对象变量["属性名"]
  • 某些属性名中包含特殊字符

实际上,JS对属性名的命名要求并不严格,属性可以是任何形式的名字

属性的名字只能是字符串,如果书写的是数字,会自动转换为字符串

全局对象

JS大部分的宿主环境,都会提供一个特殊的对象,该对象可以直接在JS代码中访问,该对象叫做全局对象

在浏览器环境中,全局对象为window,表示整个窗口

全局对象中所有属性,可以直接使用,而不需要写上全局对象名

开发者定义的所有变量,实际上,会成为window对象的属性

如果变量没有被赋值,则该变量不会覆盖window对象上的同名属性





如何使用变量

  1. 声明(定义)变量
var 变量名;

变量声明后,它的值为undefined

  1. 给变量赋值

向变量的内存空间中存放数据

  • 变量的值是可变的

变量可以被重新赋值,新的值会覆盖原来的值

  • 变量的名称

在开发中,凡是需要自行命名的位置,叫做标识符

标识符的规范

  1. [必]只能以英文字母、下划线、$开头
  2. [必]其他位置可以出行数字、英文字母、下划线、$
  3. [必]不可以与关键字、保留词重复
  4. [选]标志符应该做到望文知意见
  5. [选]如果有多个单词,使用驼峰命名法,单词首字母大写

大驼峰:每个单词首字母大写 小驼峰:除第一个单词外,首字母大写 目前,使用的标识符都是小驼峰命名法

宽度: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 函数

在变量中存放对象

  1. 通过变量,读取对象中的某个属性
变量名.属性名

当读取的熟悉不存在时,会得到undefined

当读取属性的对象不存在(undefined 或 null)时,程序报错

  1. 通过变量,更改对象中的某个属性

当赋值的属性不存在时,会添加属性

原始类型undefined中不可以有属性

  1. 删除属性
delete 变量名.属性名;

4.特殊的属性读取方式(属性表达式)

给属性赋值,或读取属性时,可以说会用下面的格式操作

对象变量["属性名"]
  • 某些属性名中包含特殊字符

实际上,JS对属性名的命名要求并不严格,属性可以是任何形式的名字

属性的名字只能是字符串,如果书写的是数字,会自动转换为字符串

全局对象

JS大部分的宿主环境,都会提供一个特殊的对象,该对象可以直接在JS代码中访问,该对象叫做全局对象

在浏览器环境中,全局对象为window,表示整个窗口

全局对象中所有属性,可以直接使用,而不需要写上全局对象名

开发者定义的所有变量,实际上,会成为window对象的属性

如果变量没有被赋值,则该变量不会覆盖window对象上的同名属性




返回列表 返回列表
评论

    分享到