内建对象
DATE(是构造函数)
var d = Date.now(); //获取当前执行时间的时间戳
getFullYear(); //获取当前年份
console.log(Date); //function Date(){} 是一个函数
getTime() ;//获取当前日期对象的时间戳。时间戳指的是,距离格林威治标准时间的1970年1月1日 0时0分0秒到当前日期所花费的毫秒数。。。计算机底层保存时间都是使用的时间戳
Math(不是构造函数)
Math.ceil();//对 数值进行向上取整
Math.floor(); //对数值进行向下取整
Math.round();//对一个数字进行四舍五入取整。
//这几个只对数字 有用
Math.random(); //随机生成一个 0---1 的随机数
/*
随机生成 x--y之间的整数
Math.round(Math.random()*(y-x)+x)
*/
//随机生成 1-10的整数
console.log(Math.round(Math.random()*9+1));
//
Math.pow(x,y);//返回x的y次幂
Math.sqrt(x); //返回x的平方根
包装类
三种包装类。
String()
阔以将基本数据类型字符串转换为 String对象
Number()
阔以将基本数据类型的数字转换为Number对象
Boolean()
可以将基本数据类型的布尔值转换为Boolean对象
注:实际应用中
不会使用基本数据类型
的对象。如果使用基本数据类型的对象。在做一些比较时可能会带来一些不可预料的错误。因为。 object1 != object2 . 即使object1,object2值都为3.
方法和属性只能添加给对象,不能添加给基本数据类型。
当对一些基本数据类型的值 去调用属性和方法时。
浏览器会临时使用包装类将其转换为对象,然后再调用对象的属性和方法。
调用完成后, 再将其转换为基本数据类型。
var s = 123;
s = s.toString(); //这里浏览器调用包装类Number()对 s进行转换====> s = new Number(123); 然后调用Number.toString()方法. 之后就销毁这个对象。
s.hello = "hello"; //s.hello ==> object1.hello = "hello". 然后销毁object1
console.log(s.hello); //undefined . s.hello ===> object2. d
String
字符串在底层字符串是以字符数组形式保存的。
可以按照数组 索引方式访问字符串中某个字符
var str = "fucking world";
// ======>
console.log(str[4]); //i
获取字符
charAt()
返回字符串中指定位置得字符。【索引】
charCodeAt()
获取指定位置,字符的字符编码(Unicode编码)
String.fromCharCode()
可以根据字符编码(Unicode)获取字符
concat()
可以用来链接两个或多个字符串
var miao = str.concat(str1,str2); //链接 str ,str1,str2
检索字符串
indexOf("a",x)
检索字符串中是否含有指定内容;
如果字符串含有该内容,则返回第一次出现的索引。
如果没有找到指定的内容,则返回 -1;
x 表示开始查找的位置
"a" 要查找的内容
lastIndexOf("a",x)
使用方法和indexOf一样
区别是。从后往前找内容
截取字符串
slice(a,b)
和数组使用方法一致
subString(a,b)
与slice()方法类似。
不同的是:
- 该方法不能接受负值。如果传递了一个负值,默认使用
0
- 可以自动调整参数的位置,如果第二个参数小于第一个,则自动调整位置。
a,b==>b,a
- 该方法不能接受负值。如果传递了一个负值,默认使用
subStr(a,b)
a:截取开始的索引
b:截取的长度
拆分字符串
split(",")
将字符串拆分为一个数组
参数:拆分字符串。
注:如果传递一个"",则会将每个字符都拆分为数组的一个元素
str = "abd,dfds,sf,gdf"
var miao = str.split(","); //miao.length == 4
字符串转换为大小写
toUpperCase()
将字符串转换为大写并返回
toLowerCase()
将字符串转为小写并返回