码迷,mamicode.com
首页 > 其他好文 > 详细

对象的内置对象

时间:2017-08-30 19:59:32      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:reg   push   pre   for   nic   eof   数组   image   有一个   

内置对象
1、js中已经定义好的对象,创建之后可以直接使用
2、内置对象:Date、Math、Regexp(正侧表达式)、Error、String、Number
3、内置对象主要学习:API(就是对象的方法),H5的方法
4、学习内置对象侧重点
    a)调用者:有无调用者
    b)参数:有无,几个
    c)功能:干什么用
    d)返回值:有无,什么类型
 5、API:应用程序接口
 
内置对象-数组-API
 
1、数组是引用类型-引用js内置对象
2、检查数组方法
    a) instanceof():检测是否是数据类型(返回 true false)
    var arr1=[1,2,3];
    var arr2=new Array(1,2,3)
    console
.log(arr2 instanceof  Array)

  b)Array.isArray()专门检测是不是数组对象

var arr2=new Array(1,2,3)
    var sat1=new String("kkk")
    console.log(Array.isArray(arr2));
    console.log(Array.isArray(sat1))
3、转换数组
        a) arr.toString()
var arr1=[1,2,3];
    console.log(arr1.toString())

4、返回数字本身arr.valueOf

5、join
        a)arr=arr.join()
        b)把数组元素用“连接符”链接成字符串
        c)(参数)决定用啥链接
        d)无参数默认用逗号链接
        e)用空字符串可以连接每个元素
                i. 空字符串有空格就是用空格隔开
//jojn是把数组元素用特殊方式连接成字符串(参数决定用什么链接,无参默认用逗号链接)
    var arr=["关羽","张飞","刘备"];
    var sat1=arr.join();
    var sat2=arr.join("&");
    var sat3=arr.join(" ");
    var sat4=arr.join("%");
    console.log(sat1);
    console.log(sat2);
    console.log(sat3);
    console.log(sat4);
6、arguments(伪数组)
    a)只有函数中使用,实参的数组
    b) 伪数组,不能改变数组的长短,可以修改元素值
 function fn(a,b){
        //只有函数中使用,实参的数组
        //伪数组:不能改长度的数组,(可以修改元素)
        //arguments.push(1)
        arguments[0]=0;
        console.log(arguments);
        console.log(arguments instanceof  Array)//false
    }
    fn(3,4);
    fn(3,4,6);
    fn(3,4,6,9);
//形参长度
        console.log(fn.length);
        //实参长度
        console.log(arguments.length);
//arguments.callee打印整个函数。
        console.log(arguments.callee);
7、栈操作(先进后出)
    a) push()在数组最后添加元素
        1、在最后面插入
        2、返回数组的新长度
        3、可以插入数组
        4、可以一次加入多个元素
var arr=["关羽","张飞","刘备"];
    var arr2=[1,2,3];//可以添加数组,也就成了二维数组 ,一次可添加多个值
    var aaa= arr.push("abc",arr2,"123");//重新定义变量
        console.log(aaa);//打印数组长度
        console.log(arr);//开始的数组
        console.log(arr);//添加后的数组
b) pop()
       1、 删除数组最后一个元素
        2、返回被删除的元素
  var arr=["关羽","张飞","刘备"];
    var aaa=arr.pop();
        console.log(aaa);//返回被删除的元素 刘备
        console.log(arr)//打印删除数组的元素
7、对列操作(先进先出)
    a) unshift()
            1、添加数组到元素前面
             2、返回数组的长度
    
  //unshift在数组的最前面添加元素
    var aaa=arr.unshift("abc");

技术分享

       b) shift()
            1、删除数组第一个元素
            2、返回被删除的元素
       b) shift()
            1、删除数组第一个元素
            2、返回被删除的元素
技术分享

 

8、排序、反转方法
    a) arr.reverse() 翻转数组
   var arr=[1,2,3,4,5,6];
    //翻转数组:曾经(返回一个新数组,原数组不变。操作原数组)
    console.log(arr.reverse());
   b)arr.sort()排序 从小到大排序
        1、安照第一个字符排列,按照首字母的unicod值排序unicode值排列
        2、回调函数可以实现按照设置的规则完成排序
技术分享
  3、打印unicode编码。插入CodeAt();
  4能对数字和字母进行排列
 //sort排序:功能很强大,能对数字和字母进行排列
 //问题:只能通过第一位数排列。解决问题的办法,可以通过回调函数解决
    var arr2=[1,4,15,22,3];
    var arr1=["a","c","d","b"];
    console.log(arr2.sort());
    console.log(arr1.sort());

9、数组拼接concat()

技术分享

10、数组的截取slice
        a)arr3.slice(开始位置,结束位置)……包左不包右,不包括结束的索引
        b) 从开始截取的位置,截取到最后(索引值截取)
       c)给予负值是截取去后值(安数字个数截取,不是索引值)
var arr=[1,2,3,"a","b","c"];
    var arr2=arr.slice(3);//包括索引值本身abc 一个参数开始位置到最后
    var arr3=arr.slice(-4);//数值个数截取,从最后一个往前数4个数3abc
    var arr4=arr.slice(4,2);//空数组
    var arr5=arr.slice(2,4);//3,a 包左不包右

 

11、操作和截取原数组
        a)arr3.splice(开始截取的位置,截取几个,弥补的值)
        b)  弥补的值可以放一个数组,可以放元素
        c) 如果是数组,会吧数组整体放入数组中,形成二维数组
var arrs=arr.splice(2);//0 截取整个数组 大于0的时候是开始截取的位置
var arr1=arr.splice(1,3);//开始截取的位置,截取的个数
12、给元素查看索
        a)indexof("要查看的元素");从前往后
        b)lastIndexOf("查看元素")从后往前查找
        c)返回索引位置,找到立即返回,一次查找一个,从前往后
      d)找不到返回 -1
 var arr=["关羽","关羽","关羽"];
    //indexOf找第一元素索引
    console.log(arr.indexOf("关羽"));
    //lastIndexOf找对应元素的最后的索引
    console.log(arr.lastIndexOf("关羽"));
13、数组迭代方法
        every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。
        a)evey:arr.every(参数是回调函数 function(element,index,array){})
            1、对数组每一项进行如下函数
            2、如果都返回true,every返回true
            3、如果有一项返回  false则,every 返回  false.
            4、evey不会改变原始数组
 技术分享

 

 //数组迭代方法
        var arr=["关羽","张飞","赵云","马超","黄忠"];
        //every()他的返回值是一个boolean类型值,而参数是一个回调函数
        arr.every(function(element,index,array){
            element="aaa"; //改变数组值
            arr[index]="aa"; //改变原数组值
            console.log(element);//当前元素值
            console.log(index);//索引值
            console.log(array);//整体数组
            return true;
        })
 b)filter返回值是一个新数组, return为true(是返回true的值)
//filter返回值是一个新数组,return为true
        var arr=["关羽","张飞","赵子云","马超","黄忠"];
        var arr1=arr.filter(function(element,index,array){
                if(element.length>2){
                    return true;
                }
                return false;
        })
        console.log(arr1)

c)foreach遍历数组(无返回值,纯操作数组中的元素)

    
//foreach遍历数组(无返回值,纯操作数组中的元素)
        //没有返回值
        var str="";
        arr.forEach(function(ele,index,array){
            str+=ele;
        });
        alert(str)
d)arr.map(function( ele, index ,erray){ 函数体})
   1、对数组中的元素进行函数运算,把每个返回值组成一个新的数组
  var arr=["关羽","张飞","赵子云","马超","黄忠"];
        var arr1=arr.map(function (ele,index,array) {
            return ele+"你好"
        });
        console.log(arr1);

技术分享

 e)some有返回值,只有一个ture 结果就是true

//有返回值,函数结果有一个是true,本方法结果也是true
            var flag=arr.some(function(ele,index,array){
                if(ele.length>2){
                    return true;
                }
                    return false;
            });
             alert(flag)
清空数组
1、arr. splice(0)
2、arr.lengt=0
3、arr=[]
var arr=[1,2,3];
    //arr.splice(0);
    //arr.length=0;
     arr=[];//最好用,推荐,开辟一块新空间
    console.log(arr);

 

对象的内置对象

标签:reg   push   pre   for   nic   eof   数组   image   有一个   

原文地址:http://www.cnblogs.com/wdz1/p/7454691.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!