1.call和apply
function fun(a,b){
console.log("a="+a);
console.log("b="+b);
alert(this.name);
}
var obj={
name:"obj",
sayName:function(){
alert(this.name);
}
};
fun.apply(obj,[2,3]);
2.arguments
function fun(){
console.log(arguments.length);
console.log(arguments[1]);
}
fun("hello",true);
它里边有个属性叫做callee,这个属性对应一个函数对象,就是当时正在指向的函数对象
console.log(arguments.callee);
3.Date对象
在JS中使用Date对象来表示一个时间
创建一个Date对象
如果直接使用构造函数创建一个Date对象,则会封装为当前代码执行的时间
创建一个指定的时间对象
需要在构造函数中传递一个表示时间的字符串作为参数
日期的格式:月份/日/年 时:分:秒
var d=new Date();
var d2=new Date("12/03/2022 11:10:30");
console.log(d);
console.log(d2);
getDate( ) 获取当前日期对象是几日
getDay( ) 获取当前日期对象是周几,
会返回一个0-6的值
0表示周日
getMonth( )
获取当前时间的月份,会返回一个0-11的值
0表示1月,11表示12月
getFullYear( )
获取当前日期对象的年份
getTime( )
获取当前日期对象的时间戳
时间戳,指的是从格林威治标准时间的1970年1月1日,0时0分0秒到当前日期所花费的毫秒数
(1秒=1000毫秒)
计算机底层在保存时间时使用的都是时间戳
可以利用时间戳来测试代码的执行的性能
获取当前的时间戳
var start=Date.now();
获取结束时间的时间戳
var end=Date.now();
5.Math对象
1)Math和其他的对象不同,它不是一个构造函数
它属于一个工具类不用创建对象,它里边儿封装了数学运算相关的属性和方法
比如
Math.PI 表示的圆周率
abs( ) 可以用来计算一个数的绝对值
ceil( ) 可以对一个数进行向上取整,小数位只要有值就自动进1
floor( ) 可以对一个数进行向下取整,小数部分会被舍掉
round( ) 可以对一个数进行四舍五入取整
2)max( ) 可以获取多个数的最大值
min( ) 可以获取多个数的最小值
Math.pow( ) 返回x的y次幂
Math.sqrt( ) 用于对一个数进行开方运算
6.包装类
7.字符串的方法
1)在底层字符串是以字符数组的形式保存的
2)charAt( )
可以返回字符串中指定位置的字符
根据索引获取指定的字符
3)charCodeAt( )
获取指定位置字符的编码(Unicode编码)
4)String.fromCharCode( )
可以根据字符编码去获取字符
5)concat( )
可以用来连接两个或多个字符串
作用和+一样
6)indexof( )
该方法可以检索一个字符串中是否含有指定内容
如果字符串含有该内容,则会返回其第一次出现的索引
如果没有找到指定的内容,则返回-1
可以指定一个第二个参数,指定开始查找的位置
7)lastIndexOf( )
该方法的用法和indexOf( ) 一样
不同的是indexOf是从前往后找,而lastIndexOf( ) 是从后面往前找
也可以在第二个参数指定开始查找的位置
8)slice( )
9)subString( )
10)split( )
可以将一个字符串拆分为一个数组
参数:
需要一个字符串作为参数,将会根据该字符串去拆分数组
11)toUpperCase( )
将一个字符串转换为大写并返回
12)toLowerCase( )
将一个字符串转换为小写并返回