一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第1天,点击查看活动详情。
- 补充
为了避免用户不输入数据造成问题,直接给形参初始值,且不影响实参给形参的赋值。
一、对象
1. 是什么?
对象(object):JavaScript里的一种数据类型,可以理解为是一种无序的数据集合
2. 对象的使用
对象声明语法:
let 对象名 = {
属性名:属性值
方法名:函数
}
(1) 属性: 数据描述性的信息称为属性,如人的姓名、身高、年龄、性别等,一般是名词性的。
访问属性方法:
- 对象.属性
- [] 形式
对象[‘属性’] (2) 方法: 数据行为性的信息称为方法,如跑步、唱歌等,一般是动词性的,其本质是函数。
(删增可在任意位置)
3. 对象的遍历
for(let k in 对象名){
console.log(对象名[k])
}
k === '属性名' 对象名[k] === 对象名['属性名']
- 例如:
数组对象:
let 对象名 = [
{属性名:属性值, , , },
{……}
]
// 定义一个存储了若干学生信息的数组
let students = [
{name: '小明', age: 18, gender: '男', hometown: '河北省'},
{name: '小红', age: 19, gender: '女', hometown: '河南省'},
{name: '小刚', age: 17, gender: '男', hometown: '山西省'},
{name: '小丽', age: 18, gender: '女', hometown: '山东省'}
]
内置对象:
1、Math
Math对象是JavaScript提供的一个“数学高手”对象,提供了一系列做数学运算的方法
方法有:
-
random:生成0-1之间的随机数(包含0不包括1)
-
ceil:向上取整
-
floor:向下取整
-
max:找最大数
-
min:找最小数
-
pow:幂运算
-
abs:绝对值
-
Math对象在线文档
如何生成0-10的随机数呢?
Math.floor(Math.random()*(10 + 1))
如何生成5-10的随机数?
Math.floor(Math.random()*(5 +1)) + 5
如何生成N-M之间的随机数
Math.floor(Math.random()*(M -N + 1)) + N
基本数据类型,引用类型。
1. 基本数据类型:值类型/基本数据类型,在存储时变量中存储的是值本身,因此叫做值类型(传递的是值,按值传递)
string ,number,boolean,undefined,null
2. 引用类型:复杂数据类型,在存储时变量中存储的仅仅是地址(引用),因此叫做引用数据类型(传递的是地址)
通过 new 关键字创建的对象(系统对象、自定义对象),如 Object、Array、Date等
3、栈(操作系统):由操作系统自动分配释放存放函数的参数值、局部变量的值等。其操作方式类似于数据结构中
的栈;
简单数据类型存放到栈里面
4、堆(操作系统):存储复杂类型(对象),一般由程序员分配释放,若程序员不释放,由垃圾回收机制回收。
引用数据类型存放到堆里面
由于是按值传递:num2 = 10(只修改了自己的值,num2只是复制了num的值) 由于是传递地址: obj2.age = 18 (相同地址指向同一个数据,修改了数据)