Java教程

JavaScript——对象

本文主要是介绍JavaScript——对象,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、自定义对象
    • 1.利用字面量创建对象
    • 2.利用 new Object 创建对象
    • 3.利用构造函数创建对象
  • 二、内置对象
    • 1.Math对象
    • 2.日期对象
    • 3.数组对象
    • 4.字符串对象
  • 总结


前言

在 JavaScript 中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。
对象是由属性和方法组成的。

  • 属性:事物的特征,在对象中用属性来表示(常用名词)

  • 方法:事物的行为,在对象中用方法来表示(常用动词)


一、自定义对象

1.利用字面量创建对象

花括号 { } 里面包含了表达这个具体事物(对象)的属性和方法;{ } 里面采取键值对的形式表示

  • 键:相当于属性名

  • 值:相当于属性值,可以是任意类型的值(数字类型、字符串类型、布尔类型,函数类型等)

var star = {
    name : 'pink',
    age : 18,
    sex : '男',
    sayHi : function(){
        alert('大家好啊~');
    }
};

使用:

console.log(star.name)     // 调用名字属性
console.log(star['name'])  // 调用名字属性
star.sayHi();              // 调用 sayHi 方法,注意,一定不要忘记带后面的括号

2.利用 new Object 创建对象

  • Object() :第一个字母大写
  • new Object() :需要 new 关键字
  • 使用的格式:对象.属性 = 值;
//创建空对象
var andy = new Obect();
//给空对象添加属性和方法
andy.name = 'pink';
andy.age = 18;
andy.sex = '男';
andy.sayHi = function(){
    alert('大家好啊~');
}

3.利用构造函数创建对象

  • 构造函数约定首字母大写。
  • 函数内的属性和方法前面需要添加 this ,表示当前对象的属性和方法。
  • 构造函数中不需要 return 返回结果。
  • 当我们创建对象的时候,必须用 new 来调用构造函数。

构造函数的封装格式

function 构造函数名(形参1,形参2,形参3) {
     this.属性名1 = 参数1;
     this.属性名2 = 参数2;
     this.属性名3 = 参数3;
     this.方法名 = 函数体;
}

构造函数的调用格式

var obj = new 构造函数名(实参1,实参2,实参3)

二、内置对象

1.Math对象

获取指定范围内的随机整数
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)内的随机值

2.日期对象

使用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();

3.数组对象

创建数组

//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

添加删除数组元素的方法

  • push(参数1…) 末尾添加一个或多个元素
  • pop() 删除数组最后一个元素
  • unshift(参数1…) 向数组的开头添加一个或更多元素
  • shift()删除数组的第一个元素

数组排序

  1. 颠倒数组中元素的排序:reverse()

  2. 对数组的元素进行排序:sort()

  • 如果传入“function(a,b){ return a-b;}”,则为升序
  • 如果传入“function(a,b){ return b-a;}”,则为降序

数组索引方法

indexOf() 数组中查找给定元素的第一个索引
lastindexOf 数组中的最后一个的索引

数组转换为字符串

toString() 把数组转换成字符串,逗号分隔每一项
join(‘分隔符’) 方法用于把数组中的所有元素转换为一个字符串

其他方法
concat() 连接两个或多个数组
slice() 数组截取
splice() 数组删除

4.字符串对象

基本包装类型

// 1. 生成临时变量,把简单类型包装为复杂数据类型
var temp = new String('andy');
// 2. 赋值给我们声明的字符变量
str = temp;
// 3. 销毁临时变量
temp = null;

根据字符返回位置

案例:查找字符串"abcoefoxyozzopp"中所有o出现的位置以及次数

  • indexOf(‘要查找的字符’,开始的位置)
  • lastlndexOf() 从后往前找,只找第一个匹配的

根据位置返回字符

案例:判断一个字符串 ‘abcoefoxyozzopp’ 中出现次数最多的字符,并统计其次数

  • charAt(index)返回指定位置的字符
  • charCodeAt(index)获取指定位置处字符的ASCII码
  • str[index]获取指定位置处字符

字符串操作方法

  • 字符串.replace(被替换的字符串, 要替换为的字符串); //在字符串中用一些字符替换另一些字符
  • 字符串.split(“分割字符”); //将字符串切分为数组。在切分完毕之后,返回的是一个新数组。
  • concat(str1,str2,str3…); // 用于连接两个或多个字符串。等效于+
  • substr(start,length); // [start,length]之间的个数
  • slice(start,end); // 取[start,end)之间的值
  • substring(start,end); // 取[start,end)之间的值;不接受负值

总结

数据只能通过索引值访问,开发者需要清晰的清除所有的数据的排行才能准确地获取数据,而当数据量庞大时,不可能做到记忆所有数据的索引值。

为了让更好地存储一组数据,对象应运而生:对象中为每项数据设置了属性名称,可以访问数据更语义化,数据结构清晰,表意明显,方便开发者使用。

这篇关于JavaScript——对象的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!