对象:万物皆对象。 面向对象编程语言而言。
概念
现实中的对象: 一个具体的事物,看得见,摸得着。 具有属性和行为。 描述一个事物时,使用名词的都是属性,使用动词的都是行为。
js中的对象: 一个抽象的概念,用来描述具体的事物的。也有属性和行为。 属性可以是基础数据类型,也可以是复杂数据类型。行为:函数。
js中的对象是由 多个键值对组成。
声明对象的方式
1.通过构造函数
var obj = new Object();
2.字面量方式
var obj = {}
//也可以直接定义属性
var obj = {
name:"zhangsan",
age:24,
isMarry:false,
eat:function(){
console.log("干饭干饭,上盆");
}
}
属性
新增属性
//格式: 对象.属性名 = 属性值
obj.height = 175;
修改属性
//格式: 对象.属性名 = 属性值
obj.height = 170;
【注意】有则修改,无则新增。
删除属性
使用delete
关键字
//格式:delete 对象.属性名
delete obj.height;
使用属性
1.点语法
//格式 对象.属性名
obj.height
2.中括号
//格式 对象['属性名']
obj['height']
3.区别
【重点】如果访问一个对象没有的属性,返回值是undefined。
点语法不能使用变量,使用变量时会将变量名当做属性名去访问。
中括号的方式可以使用变量,而且还可以使用表达式(字符串的拼接)。
内置对象
Math对象
处理js中和数学相关的函数
//求最大值
var max = Math.max(40, 35, 50, 60);
//求最小值
var min = Math.min(40, 35, 50, 60);
//求绝对值
var abs = Math.abs(-80);
//四舍五入
var round = Math.round(1.49999999);
//向上取整
var ceil = Math.ceil(1.001);
//向下取整 舍弃小数位。
var floor = Math.floor(2.9);
//随机数 返回一个0-1之间的随机数,不包含1. 含头不含尾
var random = Math.random();
随机数函数
//求n-m之间的随机整数
function getRandom(n, m) {
return Math.floor(Math.random() * (m + 1 - n) + n);
}
随机颜色案例
function getColor(){
//定义表示颜色的变量,#为固定值。
var str = "#";
//定义表示16进制的数组。每一个元素就是16进制的一个数。
var arr = ["0","1","2","3","4","5","6",'7',"8","9","A","B","C","D","E","F"];
//循环6次,生成随机颜色字符
for (var i = 0; i < 6; i++) {
//获取随机的下标。
var index = getRandom(0,15);
str+=arr[index];
}
return str;
}