在 JavaScript 中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。
对象是由属性和方法组成的。
属性:事物的特征,在对象中用属性来表示(常用名词)
方法:事物的行为,在对象中用方法来表示(常用动词)
花括号 { } 里面包含了表达这个具体事物(对象)的属性和方法;{ } 里面采取键值对的形式表示
键:相当于属性名
值:相当于属性值,可以是任意类型的值(数字类型、字符串类型、布尔类型,函数类型等)
var star = { name : 'pink', age : 18, sex : '男', sayHi : function(){ alert('大家好啊~'); } };
使用:
console.log(star.name) // 调用名字属性 console.log(star['name']) // 调用名字属性 star.sayHi(); // 调用 sayHi 方法,注意,一定不要忘记带后面的括号
//创建空对象 var andy = new Obect(); //给空对象添加属性和方法 andy.name = 'pink'; andy.age = 18; andy.sex = '男'; andy.sayHi = function(){ alert('大家好啊~'); }
构造函数的封装格式
function 构造函数名(形参1,形参2,形参3) { this.属性名1 = 参数1; this.属性名2 = 参数2; this.属性名3 = 参数3; this.方法名 = 函数体; }
构造函数的调用格式
var obj = new 构造函数名(实参1,实参2,实参3)
获取指定范围内的随机整数 function getRandom(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } Math.Pl 圆周率 Math.floor()//向下取整 Math.ceil() //向上取整 Math.round()//四舍五入版就近取整 Math.abs()//绝对值 Math.max()/Math.min()//求最大值和最小值 Math.random()//获取范围在[0,1)内的随机值
使用Date实例化日期对象
var now = new Date();//获取当前时间 var future = new Date('2019/5/1');//获取指定时间的日期对象
获取总毫秒数
// 实例化Date对象 var now = new Date(); // 1. 用于获取对象的原始值 console.log(date.valueOf()) console.log(date.getTime()) // 2. 简单写可以这么做 var now = + new Date(); // 3. HTML5中提供的方法,有兼容性问题 var now = Date.now();
创建数组
//1.字面量方式 var arr = [1,"test",true]; //2.new Array() var arr = new Array();
检测是否为数组
//1.nstanceof 运算符 var arr = [1, 23]; var obj = {}; console.log(arr instanceof Array); // true console.log(obj instanceof Array); // false //2.Array.isArray() var arr = [1, 23]; var obj = {}; console.log(Array.isArray(arr)); // true console.log(Array.isArray(obj)); // false
添加删除数组元素的方法
数组排序
颠倒数组中元素的排序:reverse()
对数组的元素进行排序:sort()
数组索引方法
indexOf() 数组中查找给定元素的第一个索引
lastindexOf 数组中的最后一个的索引
数组转换为字符串
toString() 把数组转换成字符串,逗号分隔每一项
join(‘分隔符’) 方法用于把数组中的所有元素转换为一个字符串
其他方法
concat() 连接两个或多个数组
slice() 数组截取
splice() 数组删除
基本包装类型
// 1. 生成临时变量,把简单类型包装为复杂数据类型 var temp = new String('andy'); // 2. 赋值给我们声明的字符变量 str = temp; // 3. 销毁临时变量 temp = null;
根据字符返回位置
案例:查找字符串"abcoefoxyozzopp"中所有o出现的位置以及次数
根据位置返回字符
案例:判断一个字符串 ‘abcoefoxyozzopp’ 中出现次数最多的字符,并统计其次数
字符串操作方法
数据只能通过索引值访问,开发者需要清晰的清除所有的数据的排行才能准确地获取数据,而当数据量庞大时,不可能做到记忆所有数据的索引值。
为了让更好地存储一组数据,对象应运而生:对象中为每项数据设置了属性名称,可以访问数据更语义化,数据结构清晰,表意明显,方便开发者使用。