JavaScript内置对象

JavaScript内置对象

Array数组

Array对象用于在单个的变量中存储多个值。

创建数组:

var a1 = new Array();			//定义一个空数组
var a2 = new Array(10);			//定义一个长度为10的数组(值:undefined)
var a3 = new Array(10,20,30);	//定义一个指定数值的数组
var a4 = [10,20,30,40];     	//快捷定义数组

遍历数组:

var a = [10, 20, 30, 40];

//方式1
for (var i = 0; i < a.length; i++) {
    console.log(i+"-->"+a[i]);
}

//方式2
for (var i in a) {
    console.log(i+"-->"+a[i]);
}

//方式3
a.forEach(function (v) {
    console.log(v);
});

清空数组:

arr = [];           //方式1,推荐
arr.length = 0;     //方式2
arr.splice(0,arr.length);   //方式3

常用属性:

length   获取长度

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.length);        //8

常用方法:

toString()   把数组转换为字符串,并返回结果

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.toString());        //30,50,10,40,20,80,70,60

sort()  对数组的元素进行排序

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.sort());        //[10, 20, 30, 40, 50, 60, 70, 80]

join()   把数组的所有元素放入一个字符串,元素通过指定的分隔符进行分隔

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.join("-->"));        //30-->50-->10-->40-->20-->80-->70-->60

pop()  删除并返回数组的最后一个元素

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.pop());         //60
console.log(arr.toString());    //30,50,10,40,20,80,70

push()  向数组的末尾添加一个或更多元素,并返回新的长度

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.push(90));      //9
console.log(arr.toString());    //30,50,10,40,20,80,70,60,90

shift()  取出数组中的第一个元素并删除,修改length属性

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.shift());       //30
console.log(arr.toString());    //50,10,40,20,80,70,60

unshift()  在数组最前面插入元素,返回数组的长度

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.unshift(90));   //9
console.log(arr.toString());    //90,30,50,10,40,20,80,70,60

reverse()  翻转数组

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.reverse());     //[60, 70, 80, 20, 40, 10, 50, 30]

concat()  把参数拼接到当前数组

var arr = [30,50,10,40,20,80,70,60];
console.log(arr.concat(90,100));     //[30, 50, 10, 40, 20, 80, 70, 60, 90, 100]

基本包装类型

基本类型:Undefined,Null,Boolean,Number,String

基本包装类型:Boolean,Number,String

var s1 = "zhangsan";    
var s2 = s1.substring(2,6);

s1是基本类型,而基本类型是没有方法的,但是我们却可以看到s1,可以调用substring()方法,为什么呢?实际上,当调用s1.substring(2,6)方法的时候,JS会快速把s1包装成String类型的临时对象,再调用substring方法,最后销毁临时对象。

在执行var s2 = s1.substring(2,6); 之前,会先运行

var s1 = new String("zhangsan");	 //创建和基本类型值相同的对象
var s2 = s1.substring(2,6);			//该对象调用包装对象的方法	
s1 = null;						   //销毁临时对象

Date日期

Date 对象用于处理日期和时间。

getDate()  从Date对象返回一个月中的某一天(1~31)

getDay()  从Date对象返回一周中的某一天(0~6)

getMonth()  从Date对象返回月份(0~11)

getFullYear()  从Date对象以四位数字返回年份

getHours()   返回Date对象的小时(0~23)

getMinutes()  返回Date对象的分钟(0~59)

getSeconds()  返回Date对象的秒数(0~59)

getMilliseconds()  返回Date对象的毫秒(0~999)

getTime()  返回1970年1月1日至今的毫秒数

同上还有很多set方法用来设置

function formatDate(time) {
    if (!time instanceof Date) {
        return;
    }
    var y = time.getFullYear(),     //年
        m = time.getMonth() + 1,    //月
        d = time.getDate(),         //日   
        hh = time.getHours(),       //时
        mm = time.getMinutes(),     //分
        ss = time.getSeconds();     //秒
    //判断单位数字前补零操作
    m = m < 10 ? '0' + m : m;
    d = d < 10 ? '0' + d : d;
    hh = hh < 10 ? '0' + hh : hh;
    mm = mm < 10 ? '0' + mm : mm;
    ss = ss < 10 ? '0' + ss : ss;
    return y + "-" + m + "-" + d + " " + hh + ":" + mm + ":" + ss;
}

var d = new Date();
document.write("时间戳:" + d.valueOf()+"<br />");//等同d.getTime()
document.write(formatDate(d)+"<br />");
document.write("星期"+d.getDay());

String字符串

String 对象用于处理文本(字符串)。

anchor()   创建HTML锚

charAt()   返回在指定位置的字符

charCodeAt()   返回在指定的位置的字符的Unicode编码

indexOf()   检索字符串

lastIndexOf()   从后向前搜索字符串

match()   找到一个或多个正则表达式的匹配

replace()   替换与正则表达式匹配的子串

search()   检索与正则表达式相匹配的值

slice()   提取字符串的片段,并在新的字符串中返回提取的部分

split()   把字符串分割为字符串数组

substr()   从起始索引号提取字符串中指定数组的字符

substring()   提取字符串中两个指定的索引号之间的字符

toLowerCase()   把字符串转换为小写

toUpperCase()   把字符串转换为大写

var s = "ZhangSan";
document.write(s+"<br/>");                  //ZhangSan
document.write(s[4]+"<br/>");               //g
document.write(s.charAt(4)+"<br/>");        //g
document.write(s.substr(2,3)+"<br/>");      //ang
document.write(s.substring(2,3)+"<br/>");   //a
document.write(s.toLowerCase()+"<br/>");    //zhangsan
document.write(s.toUpperCase()+"<br/>");    //ZHANGSAN
//子串查找
document.write(s.indexOf("an")+"<br/>");    //2
document.write(s.lastIndexOf("an")+"<br/>");//6
//替换
document.write(s.replace("San","Wu")+"<br/>");//ZhangWu

//分割成字符串数组
var str = "10:33:55:22:66:32:23";
console.log(str.split(":")); // ["10", "33", "55", "22", "66", "32", "23"]

//去掉空格
var str1 = " zhangsan ";
console.log("#"+str1+"#");          //# zhangsan #
console.log("#"+str1.trim()+"#");   //#zhangsan#

Math对象

Math 对象用于执行数学任务。

注释:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。我们无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。

abs(x)   返回数的绝对值

ceil(x)   对数进行上舍入

floor(x)   对数进行下舍入

random(x)   返回0-1之间的随机数

round(x)   把数四舍五入为最接近的整数

max(x,y)   返回x和y中的最高值

min(x,y)   返回x和y中的最低值

console.log(Math.abs(-20));         //20;
console.log(Math.ceil(10.00000001));    //11 进一取整
console.log(Math.floor(10.99999999));   //10 舍去取整
console.log(Math.round(10.5));      //11
console.log(Math.max(10,20));       //20
console.log(Math.min(10,20));       //10
console.log(Math.random())          //0~1的随机数
console.log(Math.ceil(Math.random()*1000000)%10+1); //1~10的随机数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值