JS内置对象
JS中的所有事物都是对象
JS中的对象总共分为三种:自定义对象,内置对象,浏览器对象.
- 自定义对象和内置对象是JS的基础内容属于ECMAScript。
- 浏览器对象属于JS独有的
对象是带有属性和方法的特殊数据类型
对象名.属性名称
对象名.方法名称(参数表)
什么是内置对象?
根据JS API(开发文档说明)(Application Program Interface)讲解的内置对象就是指JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或者最基础而且最必要的功能(常用的属性、函数等)
JS常用内置对象
Array:用于在单独的变量名中存储一系列的值
Date:用于操作日期和时间
String:用于支持对字符串的处理
Math:用于执行常用的数学任务,它包含了若干个数字常量和函数
Array(数组)对象
数组 具有相同数据类型一个或多个值的集合
创建数组
数组对象用来在单独的变量名中存储一系列的值
声明数组并分配空间:
var 数组名称 = new Array(size);
size:表示数组可以存放的初始元素总数
JS中的数组用一个名称存储一系列的值,用下标区分数组中的每个值,数组的下标从0开始,
数组可以添加任意多个值,超出设定的初始元素总量是可以的,数组长度可变类似Java集合
赋值:
数组名称[下标] = 元素值;
声明数组和赋值合并写:
var 数组名称 = ["元素值1","元素值2",..."元素值n"];
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script>
//声明数组并分配空间
var nums = new Array(5);
//赋值
nums[0] = 10;
nums[1] = 20;
nums[2] = 30;
nums[5] = 50;//对于JS数组,可以添加任意多个值
//输出数组中的元素值
console.log(nums[0]);//10
console.log(nums[1]);//20
console.log(nums[4]);//underfined
console.log(nums[5]);//50
console.log(nums[6]);//underfined
//声明数组和赋值合并写
var strs = ["hello","html","css","js"];
console.log(strs[0]);//hello
console.log(strs[4]);//underfined
</script>
</body>
</html>
数组常用方法和属性
类别 | 名称 | 说明 |
属性 | length | 设置或返回数组中元素的数目 |
方法 | join( ) | 把数组的所有元素放入一个字符串,通过一个分隔符进行分隔 |
sort() | 对数组排序 | |
push() | 向数组末尾添加一个或更多元素,并返回新的长度 | |
concat() | 合并两个数组 |
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var nums = [11, 25, 97, 64, 31, 10, 89, 73];
//获取数组的长度
console.log(nums.length);
console.log(nums);
//join():将数组里的元素取出来组装成一个字符串,元素之间使用你指定的符号进行连接
var newNums = nums.join("-");
console.log(newNums);
//sort():对数组进行升序排序
//var numbers = nums.sort();
//console.log(numbers);
//自己写冒泡排序
//外层for循环控制比较的次数
for (var i = 0; i < nums.length - 1; i++) {
//内层for循环控制每一轮的比较次数
for (var j = 0; j < nums.length - 1 - i; j++) {
//比较相邻的两个元素,满足条件实行交换
if (nums[j] > nums[j + 1]) {
var temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
console.log(nums);
//push():向数组的末尾添加元素
var length = nums.push(100, 200);
console.log(length);
console.log(nums);
var str1 = ["hello", "java", "html"];
var str2 = ["css", "js"];
var strs = str1.concat(str2, str2);
console.log(strs);
</script>
</body>
</html>
Date对象
在页面中显示日期和时间需要使用Date对象,Date 对象用于处理日期和时间
语法:
var 日期对象=new Date(参数)
参数格式:MM DD,YYYY,hh:mm:ss
常用方法:
方法 | 说 明 |
getDate() | 返回 Date 对象的一个月中的每一天,其值介于1~31之间 |
getDay() | 返回 Date 对象的星期中的每一天,其值介于0~6之间(注:0-周日) |
getHours() | 返回 Date 对象的小时数,其值介于0~23之间 |
getMinutes() | 返回 Date 对象的分钟数,其值介于0~59之间 |
getSeconds() | 返回 Date 对象的秒数,其值介于0~59之间 |
getMonth() | 返回 Date 对象的月份,其值介于0~11之间(注:0-1月份) |
getFullYear() | 返回 Date 对象的年份,其值为4位数 |
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var date = new Date();
console.log(date);
//通过date.getDay()获取的星期是一个罗马数字,0表示周日,1表示周一
var xingQi = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
console.log("今天是:" + date.getFullYear() + "年" + (date.getMonth() + 1) + "月" + date.getDate() + "日," + xingQi[date
.getDay()] + "," + date.getHours() +":" +date.getMinutes() + ":" + date.getSeconds());
</script>
</body>
</html>
String对象
String 对象用于处理文本(字符串)
语法:
var 字符串对象=new String(参数)
参数 是要存储在 String 对象中或转换成原始字符串的值
常用方法和属性:
类别 | 名称 | 说明 |
属性 | length | 字符串的长度 |
方法 | charAt() | 返回在指定位置的字符(注:字符串中第一个字符的下标是0) |
concat() | 连接字符串 | |
replace() | 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串 | |
split() | 把一个字符串分割成字符串数组 | |
indexOf() | 返回某个指定的字符串值在字符串中首次出现的位置 | |
lastIndexOf() | 返回一个指定的字符串值最后出现的位置 | |
match() | 可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配 |
类别 | 名称 | 说明 |
方法 | toLowerCase() | 把字符串转换为小写 |
toUpperCase() | 把字符串转换为大写 | |
substr() | 从起始索引号提取字符串中指定数目的字符(不建议使用) | |
substring() | 提取字符串中两个指定的索引号之间的字符 | |
slice() | 提取字符串的某个部分,并以新的字符串返回被提取的部分 |
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var str1 = new String("Q-w-e-r-t-e");
console.log(str1);
var str2 = 'hello java';
console.log(str2);
//获取字符串的长度
// console.log(str1.length);
// console.log(str2.length);
// console.log(str1.charAt(2));
// console.log(str1.concat(str2));
// console.log(str1.replace("w","123"));
// console.log(str1.split("-"));
// console.log(str1.indexOf("e"));
// console.log(str1.lastIndexOf("e"));
// console.log(str1.match("e"));
// console.log(str1.toLowerCase());
// console.log(str1.toUpperCase());
console.log(str1);
console.log(str1.substr(1,4));
console.log(str1.substring(1,4));
console.log(str1.slice(1,4));
console.log(str2.repeat(5));
</script>
</body>
</html>
Math对象
用于执行数学任务
常用方法:
方法 | 说 明 | 示例 |
ceil() | 对数进行上舍入 | Math.ceil(25.5);返回26 Math.ceil(-25.5);返回-25 |
floor() | 对数进行下舍入 | Math.floor(25.5);返回25 Math.floor(-25.5);返回-26 |
round() | 把数四舍五入为最接近的数 | Math.round(25.5);返回26 Math.round(-25.5);返回-26 |
random() | 返回0.0~1.0之间的随机数 | Math.random();例如:0.6273608814137365 |
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
//输出圆周率
console.log(Math.PI);
//上舍入:返回一个比指定数大的最小整数值
console.log(Math.ceil(9.01));//10
//下舍入:返回一个比指定数小的最大整数值
console.log(Math.floor(9.9));//9
//四舍五入:<0.5就舍去,>=0.5就进1
console.log(Math.round(5.99));
//random():随机返回一个大于等于0.0,小于1.0之间的浮点数
var num1=Math.random();
console.log(num1);
//返回一个[0.0,10.0)之间的浮点数
console.log(Math.random()*10);
//返回一个[0-10)之间的整数
console.log(parseInt(Math.random()*10));
//随机返回一个[num1,num2)之间的整数
//parseInt(Math.random()*(num2-num1)+num1);
//随机返回一个[39,51)之间的整数
for(var i =1;i<=30;i++){
console.log(parseInt(Math.random()*(51-39)+39));
}
</script>
</body>
</html>
详细方法和属性请参考帮助文档