zoukankan      html  css  js  c++  java
  • JavaScript内置对象

    JavaScript中的内置对象

    1. Array数组对象
    2. String字符串对象
    3. Math数学计算对象
    4. Date日期对象

    1.Array数组对象

    创建数组:

    1. 使用Array构造函数
      语法:new Array()
      小括号说明:

      1. 预先知道数字要保存的项目数量
      2. 向Array构造函数中传递数组应包含的项。
    2. 使用数组字面量表示法
      由一对包含数组项的方括号[]表示,多个数项之间用逗号隔开

    创建数组的两种方法:

    //创建数组:第一种方法:
            var ar = Array();
            //Array是可以传递一个参数的,表示数组的初始元素个数
            var ar2 = Array(5); //5代表数组中初始有5个元素,这这5元素是未初始化的,属于undefined类型
    
            //创建数组:第二种方法
            var ar3 = [1];
            //数组对象中常用方法以及属性
            //属性的话基本上就是使用length,得到数组元素个数
            //length的初始值是1,当数组中没有或者只有一个元素的时候其值就是1
            console.log(ar.length,ar2.length,ar3.length);
            //得到的结果为0 5 1
            //0 是数组ar的长度  未初始化长度为0   5是ar2数组的长度   5个元素长度为5
            //1是ar3数组的长度 ar3元素长度为5
    

    创建数组:

    newarray
    //数组对象中常用方法和属性
    //属性的话基本上就是使用length,得到数组元素个数
    //数组中没有元素的时候,length的值是0
    //数组的最大下标 = 数组.length - 1;

    数组的常用方法:

    1. length 数组的大小
    2. push(ele) 尾部追加元素
    3. pop() 获取尾部的元素
    4. unshift(ele) 头部插入元素
    5. shift() 头部移除元素
    6. slice(start, end) 切片
    7. reverse() 反转
    8. join(seq) 将数组元素连接成字符串在python中列表的元素必须是均为字符串,才能连接到一起。在js中,类型不同也可以var a=["jerd",888,"jerry"]; a.join("|"); "jerd|888|jerry"
    9. concat(val, ...) 连接数组
    10. sort() 排序

    push()方法 功能:把它的参数顺序添加到数组的尾部,代码如下:

            var ar = Array();
            var ar2 = Array(5);
            var ar3 = [1];
            //常用方法
            ar.push(1,'hello',5.5,[5,6,7]);//尾部添加(可以连续添加)添加数据,数组中可以同时存储各种类型的数据
            console.log(ar);
            //输出结果为如图所示往ar空数组添加了如下四条
    

    1

    unshift()方法 功能:把它的参数顺序添加到数组的开头,代码如下:

            var ar = Array();
            var ar2 = Array(5);
            var ar3 = [1];
            ar.push(1,'hello',5.5,[5,6,7]);    //尾部添加
            ar.unshift(2,'world',6.6,[99,88]); //头部添加
            console.log(ar);
            //如图所示,push()方法在尾部添加过后,unshift()方法在头部添加了
    

    2

    pop()方法 功能:删除数组中最后一个元素,返回值为被删除的元素,
    shift()方法:功能 :删除数组中的第一个元素,返回值为被删除的元素
    代码如下:

            var ar = Array();
            var ar2 = Array(5);
            var ar3 = [1];
            ar.push(1,'hello',5.5,[5,6,7]);
            ar.unshift(2,'world',6.6,[99,88]);
            var delpopend = ar.pop();   //删除数组中的最后一个元素
            var delshifthead = ar.shift();//删除数组中的第一个元素
            console.log(delpopend);     //返回删除的最后一个元素
            console.log(delshifthead);  //返回删除的第一个元素
            console.log(ar);            //输出当前剩余的元素
    

    3

    join()方法:功能 :用于把数组中所有的元素放入一个字符串
    代码如下:

            var ar = Array();
            var ar2 = Array(5);
            var ar3 = [1];
            ar.push(1,'hello',5.5,[5,6,7]);
            ar.unshift(2,'world',6.6,[99,88]);
            var jo = ar.join('|');
            console.log(jo);
    

    4

    reverse()方法 功能:用于颠倒数组中元素的顺序,也称为反转
    代码如下:

            var ar = Array(1,2,3,4,5,6);
            ar.reverse();
            console.log(ar);
            //得到的结果为6,5,4,3,2,1
    

    5

    sort()方法 功能:用于对数组的元素进行排序

    var ar = [11,85,42,63,1,98];
    console.log(ar.sort());
    

    6

    数组的操作方法

    1. concat()
    2. slice

    concat()方法 数组的合并 功能:用于连接两个或多个数组 返回值:数组
    //数组拼接,数组本身不变,将拼接后的新数组以返回值的方式返回
    //不同于push的是,它会将拼接进来的数组元素拼接到被拼接数组中
    代码如下:

            var ar = Array();
            var ar2 = Array(5);
            var ar3 = [1];
            ar.unshift(2,'world',5.5,[99,88]);
            ar2.push(1,2,85,'world');
            tmp = ar.concat(ar2);
            console.log(tmp);
    

    7

    **slice()方法 功能:从已有的数组中返回选定的元素
    代码如下:
    //slice;分割数组,将分割后的数组返回,原数组不变
    //参数一:起始位置(下标)
    //参数二:结束位置(下标)
    //返回值:切割出来的数据
    //var slic = ar.slice(1,3);
    //只传递一个参数时,第二个参数默认是结束位置
    //var slic = ar.slice(1);
    //当参数为负数的时候,会将数组长度减去这个负数后得到的值就是起始位置或是结束位置
    //var slic = ar.slice(-7,-6);

    splice方法 可以添加、删除、替换
    删除的代码如下:

            var ar = [15,'world',85,5.5];
            var ar2 = Array(5);
            var ar3 = [1];
            ar.unshift(2,'world',5.5,[99,88]);
            console.log("删除前的如下:",ar);
            ar.splice(0,4);
            console.log("删除后的如下:",ar);
    

    8

    查找元素 返回值为下标
    indexof是正向查找,lastindexof是反向查找
    代码如下:

            //正向查找world  ,下标为5
            var ar = [15,'world',85,5.5];
            var ar2 = Array(5);
            var ar3 = [1];
            ar.unshift(2,'hello',5.5,[99,88]);
            console.log("输出全部元素:",ar);
            var index = ar.indexOf('world');
            console.log(index)
    

    9

    //splice任意位置的添加和删除
    //参数一:起始位置(下标)
    //参数二:操作个数,当小于等于0的时候表示添加,当大于0的时候,表示删除的个数
    //参数三:如果是添加或替换的话,那么这个就是要添加或替换的数据(个数不限)
    //ar.splice(1,-1,123,7788);
    //var spl = ar;
    //查找元素,返回元素所在位置(下标)
    //参数:要查找的数据元素
    //返回值:元素的位置下标,如果没找到返回-1
    var index = ar.indexOf('hello');
    //于indexOf一样。只是从后往前查找罢了
    var index2 = ar.lastIndexOf('hello');
    console.log(index,index2,ar);

    遍历数组中的元素:

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

    方法一:
    for (var i=0;i<a.length;i++) {
      console.log(a[i]);
    }
    方法二:
    b为索引,并不是具体的值
    for(b in a){
    console.log([a[b]);
    

    判断是否为数组:isArray()

    Array.isArray(被检测的值)
    var test = [55, 2, "你好", "JERD"];
    Array.isArray(test);  //true
    

    2. string()字符串对象

    • charAt()方法
    • charCodeAt()方法
    • indexof()方法
    • lastindexof()方法
      99

    charAt()方法与charCodeAt()方法 返回指定字符位置下标

    //字符串对象的创建
        var s1 = '一-a-h-e-l-l-o';
        var s2 = "world";
    //charAt:返回指定位置(下标)的字符
        var ch = s1.charAt(0);
    //charCodeAt:返回指定位置(下标)的字符的数字码
        var ch2 = s1.charCodeAt(0);
    

    10

    indexof与lastindexof方法(如果没有找到字符串,则返回-1)lastindexof是从后往前数

            var s1 =[11,22,33,65];
            var s2 = "world";
            var index = s1.indexOf(22)
            console.log(index)
    

    11

    字符串截取方法

    • slice()方法
    • substring()方法
    • substr()方法

    slice()方法 截取 第一个参数必要,指定开始位置,第二个非必需,如果不指定一直到字符串末尾
    代码如下:

            var s1 =[11,22,33,65];
            var s2 = "world";
            var sub1 = s1.slice(1,3);
            console.log(sub1)
    

    12

    substring()方法和slice一样,只是当参数作为负值的时候自动将参数转化为0,会将较小的数作为开始位置较大的数作为结束位置

    replace()方法 在字符串中用一些字符替换零一些字符
    代码如下:

            var s1 =[11,22,33,65];
            var s2 = "world";
            console.log("替换前为:",s2);
            var re1 = s2.replace("world","hello");
            console.log("替换后为:",re1);
    

    13

    toUppercase()方法与toLowerCase()方法
    大小写转换,代码如下:

            var s1 =[11,22,33,65];
            var s2 = "world";
            var s3 = "HELLO";
            var big = s2.toUpperCase();//大写
            var small = s3.toLowerCase();//小写
            console.log(big,small);
    

    14

    3. Math对象(数学对象)

    math
    //Math数学对象,无需创建,直接使用即可
    代码如下:

    //Math数学对象,无需创建,直接使用即可
            var min = Math.min(1,2,3,4);//求最小值
            console.log(min);
            var max = Math.max(1,2,3,4);//求最大值
            console.log(max);
            var ceil = Math.ceil(1.9); //向上取整  //2
            console.log(ceil);
            var floor = Math.floor(1.9);//向下取整  //1
            console.log(floor);
            var rund = Math.round(5.5); //四舍五入 //5
            console.log(rund);
            var abs = Math.abs(-5);//求绝对值
            console.log(abs);
            var rand = Math.floor(Math.random() * 10) % 10;//返回指定范围的随机数
            console.log(rand);
    

    15

    4. Date对象(日期对象)

    date
    代码如下:

            //日期对象需要创建
            var date = new Date();
            //获取年月日
            var nyr = date.toLocaleDateString();
            //获取时分秒
            var sfm = date.toLocaleTimeString();
            console.log(nyr);
            console.log(sfm);
    
    • 获取年月日时分秒及星期的方法
    1. getFullYear(): 返回4位数的年份
    2. getMonth(): 返回日期中的月份,返回值为0-11
    3. getDate(): 返回月份中的某一天
    4. getDay(): 返回星期,返回值为0-6
    5. getHours(): 返回小时
    6. getMinutes(): 返回分
    7. getSeconds(): 返回秒
    8. getTime(): 返回表示日期的毫秒数
    • 设置年月日时分秒及星期的方法
    1. setFullYear(year): 设置4位数的年份
    2. setMonth(mon): 设置日期中的月份,从0开始,0表示1月
    3. setDate(): 设置日期
    4. setHours(): 设置小时
    5. setMinutes(): 设置分
    6. setSeconds(): 设置秒
    7. setTime(): 以毫秒数设置日期,会改变整个日期
  • 相关阅读:
    【Codechef】Chef and Bike(二维多项式插值)
    USACO 完结的一些感想
    USACO 6.5 Checker Challenge
    USACO 6.5 The Clocks
    USACO 6.5 Betsy's Tour (插头dp)
    USACO 6.5 Closed Fences
    USACO 6.4 Electric Fences
    USACO 6.5 All Latin Squares
    USACO 6.4 The Primes
    USACO 6.4 Wisconsin Squares
  • 原文地址:https://www.cnblogs.com/Lay0us/p/12054134.html
Copyright © 2011-2022 走看看