内置对象
概念:内置对象就是指这个语言自带的一些对象,供开发者使用,这些对象提供了一些常用的或是最基本而必要的功能。
js上的内置对象有:Math
String
,Array
, Date
,location
【Math】
不能用构造函数的方式创建,无法初始化,只有静态属性和方法
【静态属性】
1..PI
- 圆周率Π
console.log(Math.PI) //3.141592653589793
【静态方法】
1..ceil()
- 向上取整
let float = 23.56;
console.log(Math.ceil(float));//24 向上取整
2..floor()
- 向下取整
let float = 23.56;
console.log(Math.floor(float));//23 向下取整
3..toFixed()
- 保留几位小数点(自动四舍五入)
let float = 23.56;
console.log(float.toFixed(1)); //23.5 保留几位小数点(自动四舍五入)
2..max()
- 最大值
let arr = [1,45,2,67,98,45,-4];
let maxNum = Math.max(...arr); //98
3..min()
- 最小值
let arr = [1,45,2,67,98,45,-4];
let minNum = Math.min(...arr); //-4
4..sin()
- 正弦值
- 参数:弧度:
x = Math.PI/180*deg;
Math.sin(x);
5..cos()
- 余弦值
Math.cos(x)
6..tan()
- 正切值
Math.tan(x);
7..random()
- 随机数
Math.random();
8..round()
- 四舍五入取整
let value = 34.45;
console.log(Math.round(value)); //34
9..abs()
- 绝对值
- 参数:数字或纯数字的字符串
- 返回值:绝对值,若参数错误:非数字字符串、undefined、空,返回NaN;
- 参数为null返回0
let value = -34.45;
console.log(Math.abs(value)); //34
10..pow(x,y)
- x的y次方
- 参数:两个参数,数字或纯数字的字符串
- 返回值:x的y次方,若参数错误,返回NaN
console.log(Math.pow("3",2)); //9
console.log(Math.pow(2,3)); //8
11..sqrt()
- 参数:数字或纯数字的字符串
- 返回值:平方根,若参数为负数,返回NaN
console.log(Math.sqrt("2")); //1.4142135623730951
console.log(Math.sqrt(0)); //0
console.log(Math.sqrt(-1)); //NaN
【Date】
1.创建date的方式
let date = new Date;//不会报错,因为在没有实参的时候可以省略小括号
let date = new Date();
2.秒数+date
// 1970 1/1 00:00:00开始
// 获取秒数
console.log(+date); //1645149456818
3.时间date
//获取现在整体时间
console.log(date); //Fri Feb 18 2022 09:45:32 GMT+0800 (中国标准时间)
4.年getFullYear()
//获取年份
console.log(date.getFullYear()); //2022
5.月getMonth()
//获取月份
console.log(date.getMonth()+1); //2
6.日getDate()
// 获取日份
console.log(date.getDate()); //18
7.星期getDay()
//获取星期
console.log(date.getDay()); //5
8.小时getHours()
//获取小时
console.log(date.getHours());
9.分钟getMinutes()
//获取分钟
console.log(date.getMinutes());
10.秒数getSeconds()
//获取秒数
console.log(date.getSeconds());
【String】
1.split()
let str = "abc";
str.split();
console.log(+str); //NaN +隐式转换,数据类型为Number但是str为字母所以输出NaN
2.slice()
- slice出现负数的情况:slice与字符串长度相加
str = "abc";
let temp = str.slice(0,1);
console.log(temp); //a
3.substr()
- substr:从字符串中提取从 str位置开始的指定数目的字符串
- 参数一:为下标,参数2为取的个数
- 注意:如果为负数则从最后一个字符串往前,如-1就为最后一个字符串
str = "abc";
temp = str.substr(0,2);
console.log(temp); //ab
temp = str.substr(-2,2);
console.log(temp); //bc
4.subString()
- subString:用于提取字符串中介于两个指定下标之间的字符
- subString出现负数时:把负数变为0(0为下标)
- 注1:如果第二个参数为负数,则与第一个参数互换,
- 注2:如果第一个参数值与第二个参数值一样,就返回一个空字符串
str = "abc";
temp = str.substring(-1,1);
console.log(temp); //a
temp = str.substring(2,-2);
console.log(temp); //ab
temp = str.substring(1,1);
console.log(temp); //为空字符串
5.concat()
- 字符串拼接
str = "abc";
temp = str.concat("aa");
console.log(temp); //abcaa
6.trim()
-
(这个方法不能去掉中间的空格)
str = " freidents "; console.log(str.length); //11
-
去除字符串左右空格
temp = str.trim(); console.log(temp.length); //9
7.trimLeft()
-
去左空格
temp = str.trimLeft(); console.log(temp.length); //10
8.trimRight()
-
去右空格
temp = str.trimRight(); console.log(temp.length); //10
9.charAt()
- 获取实参下标的字符
- 注1:实参的取值number或数值的字符串
- 注2:如果不是注1的内容,则实参转换为0(0为下标)
str = " freidents";
console.log(temp.charAt(1)); //r
console.log(temp.charAt("a")); //f
10.startsWith()
- 是否以XXX开始
str = `asdf`;
console.log(str.startsWith("as")); //true
console.log(str.startsWith("ad")); //false
11.endsWith()
- 是否已XXX结束
str = `dfgh`;
console.log(str.endsWith("fgh")); //true
console.log(str.endsWith("fh")); //false
12.repeat()
- 字符串重复的次数
str = "你好";
console.log(str.repeat(3)); //你好你好你好
13.toUpperCase()
- 字符串的内容都转换成大写
- 注:不是大转小,小转大
str = "freiASDdents";
//大写(去掉to就是css中的大小写)
console.log(str.toUpperCase()); //FREIDENTS
14.toLowerCase()
- 字符串的内容都转换成大写
- 注:不是大转小,小转大
str = "ABCDEsdfFG";
//小写
console.log(str.toLowerCase()); //abcdefg
【Object】
let num = new Number();
console.log(typeof num); //object
1..assign(target,source);
- 实参1:合并实参2即以后的键值对
- 注1:若参2以后的键值对,参1已经存在,则覆盖参1的键值
- 注2:若参2以后的键值对,参1不存在,则给参1新增键值对
- 注3:若参n以后的键值对,前面存在则覆盖,前面不存在则新增
let obj = {
age:23,
}
Object.assign(obj,{
age:90,
gender:"male"
},{
name:"za",
gender:"female"
}
)
console.log(obj);
//{ age: 90, gender: 'female', name: 'za' }
2..Object.create(proto,propertiesObject)
- 创立一个空对象
- 第一个参数作为该对象的原型
- 第二个参数作为该对象的默认属性