对象的定义
例:
let me = {
uname: '长毛女士',
age: 20,
gender: '女'
position:'student'、
doHomeWork: function () {
console.log('每天都要写作业')}
}
对象是JavaScript数据类型的一种;,它和我们之前学过的数值类型(String、Boolean、...)不同,它更像是一种数据的集合。
语法:
var obj = {里面存属性(数据描述性的信息称为属性,如用户名、年龄、职位... )和方法key 属性名: value 属性值;(属性都是成对出现的,包括属性名和值 )}参考如上例子
- 在{}面用。属性与属性之间用逗号隔开
- 属性值可以双引号或单引号;属性名是为了方便找到他,只是一个辅助
访问对象
声明对象,并添加了若干属性后,可以使用 “.”
或“ []”
获得对象中属性对应的值
eg:
let me = {
uname: '长毛女士',
age: 20,
gender: '女'
position:'student'
doHomeWork: function () {
console.log('每天都要写作业')}
}
console.log(me.age)
或:
console.log(me['age'])
对象也具备着增删改查属性的功能
增/改(动态追加)
eg:
let me = {
uname: '长毛女士',
age: 20,
gender: '女'
position:'student'
doHomeWork: function () {
console.log('每天都要写作业')}
me.uname='小明'//改
me.score=90//增
注:无论是属性或是方法,同一个对象中出现名称一样的,后面的会覆盖前面的,所以动态增加和修改都是差不多的;
调用方法
eg:
let me = {
uname: '长毛女士',
age: 20,
gender: '女'
position:'student'
doHomeWork: function () {
console.log('每天都要写作业')}
me. doHomeWork()
遍历对象
eg:
let me = {
uname: '长毛女士',
age: 20,
gender: '女'
position:'student'
doHomeWork: function () {
console.log('每天都要写作业')}
//遍历对象
for (let k in me) {
console.log(k)
}
注意:for...in... 不提倡遍历数组,因为k代表的是一个字符串
内置对象
JavaScript里面存在着很多内置对象,可以理解为它是一个框架,底层写好了逻辑,我们只是在用这个功能而已;比如console.log中,console是JavaScript里得一个内置对象,log则是console得一个方法,我们只是在调用这个对象。像这样得例子随处可见,我们只需要记住常用得就行,不常用的遇到再去进行搜索。
数学对象Math
圆周率属性
console.log(Math.PI)//获取圆周率
数值向上取值Math.ceil 方法
Math.ceil(0.5)
例:
console.log(Math.ceil(0.1)) // 1
console.log(Math.ceil(0.5)) // 1
console.log(Math.ceil(0.9)) // 1
数值向下取值Math.floor 方法
Math.floor(0.5)
例:
console.log(Math.floor(0.1)) // 0
console.log(Math.floor(0.5)) // 0
console.log(Math.floor(0.9)) // 0
四舍五入Math.round方法
使用方法同上面的一样
console.log(Math.round(0.1)) // 0
console.log(Math.round(0.49)) // 0
console.log(Math.round(0.5)) // 1
console.log(Math.round(0.9)) // 1
注:小数位第一位大于等于5就往上取值,否则往下取值
生成随机数Math.random方法
要十分注意的是这个方法只可以生成0 到 1 之间的随机数,要想更大就只能乘以它的倍数
生成随机数的函数
// 取到 N ~ M 的随机整数
function getRandom(N, M) {
return Math.floor(Math.random() * (M - N + 1)) + N
}
绝对值Math.abs方法
Math.abs(-3)//输出1
平方根Math.sqrt方法
// 求某数的平方根
Math.sqrt(4)
幂方法Math.pow
// 求某个数的几次方
Math.pow(3, 2) // 求 3 的 2 次方
Math.pow(3, 3) // 求 3 的 3 次方
获取最大Math.max /最小值Math.min方法
除了以上,还有常见的找最大最小值的方法,很大程度上减少了代码,不用再像以前一样要写一个比较。
console.log(Math.max(1, 2, 3, 4, 5))//输出5
console.log(Math.min(1, 2, 3, 4, 5))//输出1