JavaScript内置对象
目标:
- 能够说出什么是内置对象
- 能够根据文档查询指定API的使用方法
- 能够使用Math对象的常用方法
- 能够使用Date对象的常用方法
- 能够使用Array对象的常用方法
- 能够使用String对象的常用方法
目录:
- 内置对象
- 查文档
- Math对象
- 日期对象
- 数组对象
- 字符串对象
内置对象
查文档
Math对象
var myMath = {
PI: 3.1415926,
max: function() {
var max = arguments[0];
for (var i = 1; i < arguments.length; i++) {
if (arguments[i] > max) {
max = arguments[i];
}
}
return max;
},
min: function() {
var min = arguments[0];
for (var i = 1; i < arguments.length; i++) {
if (arguments[i] < min) {
min = arguments[i];
}
}
return min;
}
}
console.log(myMath.PI);
console.log(myMath.max(1,121,33))
function getRandom(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
var guess = getRandom(1,10);
while(true) {
var input = Number(prompt('请输入你猜的数字!!'));
if(input == guess) {
console.log(guess);
alert('猜对了\n你输入的是:'+ input + '\n系统是:' + guess)
break;
} else if (input > guess){
console.log(guess);
alert('猜大了\n你输入的是:'+ input + '\n系统是:' + guess)
} else if (input < guess) {
console.log(guess);
alert('猜小了\n你输入的是:'+ input + '\n系统是:' + guess)
}
}
日期对象
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth() + 1;
var dates = date.getDate();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
var arr = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
var day = date.getDay();
console.log('今天是:' + year + '年' + month + '月' + dates + '日 ' + hour + '时' + minute + '分' + second + '秒 ' + arr[day]);
function getCon(t) {
return t < 10 ? '0' + t : t;
}
function getTime() {
var time = new Date();
var h = getCon(time.getHours());
var m = getCon(time.getMinutes());
var s = getCon(time.getSeconds());
return '现在是:' + h + '时' + m + '分' + s + '秒 ';
}
console.log(getTime());
function getCon(t) {
return t < 10 ? '0' + t : t;
}
function countDown(time){
var nowTime = +new Date();
var inputTime = +new Date(time);
var times = (inputTime - nowTime) / 1000;
var d = parseInt(times / 60 / 60 / 24); // 天
d = getCon(d);
var h = parseInt(times / 60 / 60 % 24); // 时
h = getCon(h);
var m = parseInt(times / 60 % 60); // 分
m = getCon(m);
var s = parseInt(times % 60); // 秒
s = getCon(s);
return d + '天' + h + '时' + m + '分' + s + '秒 '
}
console.log(countDown('2022-11-28 19:00:00'));
数组对象
输入的不是数组会出错如下:
var arr = [1500,1200,2000,2100,1800];
var arr2 = [];
for(var i = 0; i<arr.length; i++) {
if (arr[i] < 2000) {
// arr2[arr2.length] = arr[i];
arr2.push(arr[i]);
}
}
console.log(arr2)
var arr = ['c','a','z','a','x','a','x','c','b'];
var arr2 = [];
for (var i = 0; i < arr.length; i++) {
if (arr2.indexOf(arr[i]) == -1) {
arr2.push(arr[i]);
}
}
console.log(arr2)
字符串对象
字符串大量拼接占用内存(原因时计算机不会删除之前的空间),拖慢计算机速度
var str = "abcoefoxyozzopp";
var index = str.indexOf('o');
var num = 0;
while(index !== -1){
console.log(index);
num++;
index = str.indexOf('o',index +1);
}
console.log(num)
var str = "abcoefoxyozzopp";
var o = {};
for (var i = 0; i < str.length; i++) {
var chars = str.charAt(i);
if (o[chars]) {
o[chars]++;
} else {
o[chars] = 1;
}
}
console.log(o);
// 遍历对象
var max = 0;
var ch = '';
for (var k in o){
if (o[k] > max) {
max = o[k];
ch = k;
}
}
console.log(max);
console.log(ch);
// 给定一个字符串,如: “abaasdffggghhjjkkgfddsssss3444343”,问题如下∶
// 1、字符串的长度
// 2、取出指定位置的字符,如:0,3,5,9等
// 3、查找指定字符是否在以上字符串中存在,如: i , c , b等
// 4、替换指定的字符,如∶g替换为22,ss替换为b等报作方法
// 5、截取指定开始位置到结束位置的字符串,如︰取得1-5的字符串
// 6、找出以上字符串中出现次数最多的字符和出现的次数
var str = "abaasdffggghhjjkkgfddsssss3444343";
// 1、字符串的长度
console.log(str.length);
/ 2、取出指定位置的字符,如:0,3,5,9等
var str = "abaasdffggghhjjkkgfddsssss3444343";
console.log(str.charAt('0'));
console.log(str.charAt('3'));
console.log(str.charAt('5'));
console.log(str.charAt('9'));
// 3、查找指定字符是否在以上字符串中存在,如: i , c , b等
var str = "abaasdffggghhjjkkgfddsssss3444343";
console.log(str.indexOf('i'));
console.log(str.indexOf('c'));
console.log(str.indexOf('b'));
var str = "abaasdffggghhjjkkgfddsssss3444343";
// 4、替换指定的字符,如∶g替换为22,ss替换为b等报作方法
console.log(str);
str = str.replace('g','22');
console.log(str);
str = str.replace('ss','b');
str.re
console.log(str);
// 5、截取指定开始位置到结束位置的字符串,如︰取得1-5的字符串
var str = "abaasdffggghhjjkkgfddsssss3444343";
console.log(str.slice(1,5));
console.log(str.substring(1,5));
/ 6、找出以上字符串中出现次数最多的字符和出现的次数
var str = "abaasdffggghhjjkkgfddsssss3444343";
var o = {};
for (var i = 0; i < str.length; i++) {
var chars = str[i];
if (o[chars]){
o[chars]++;
} else {
o[chars] = 1;
}
}
// 遍历对象
var max = 0;
var ch = '';
for (var k in o) {
if(o[k] > max) {
max = o[k];
ch = k;
}
}
console.log(max,k)