IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> javascript数组基础方法 -> 正文阅读

[JavaScript知识库]javascript数组基础方法

定义数组的方式

(javascript数组不越界,越界会返回undefined)

var arr = [];
var arr = new Array();
var arr = new Array(10);//长度为10的空数组
var arr1 = [10];//数组第一位为10

数组常用方法

1.push,pop,shift,unshift,reverse(改变原数组)

        // 数组常用的的方法
        // push在数组的最后一位添加数据;
        var arr = [1,2];
        Array.prototype.push = function(){
            for(var i = 0;i<arguments.length;i ++)
            {
                this[this.length] = arguments[i];
            }
            arr[arr.length];
            return this.length;
        } 
        // arr.pop把数组的最后一位剪切出来
        // arr.shift删除第一位数据
        //arr.unshift在数组的前面加数据
        // arr.reverse()倒叙数组
        // splice(0,2)由第零位开始切2位,留下后面的
        // splice(1,1,0,0,0)第二位以后的参数会被放到切口处

2.sort(改变原数组)

//arr.sort()排序:由小到大。arr.sort().reverse()降序(默认按照字符串大小排序).
//必须写俩形参
//看返回值1)当返回值为负数时,那么前面的数放在前面
//2)为正数,那么后面的数放前面
//3)为0,不动
//解决方法
        var arr = [1,2,3,4,5,6,7,8,9,10];
        arr.sort(function (a,b) {
            // return a - b;//升序
             return b - a;//降序
        });

3.join,concat,split,toString,slice

        //concat拼接两个数组(不改变原数组的方法)
        arr = [1,2,3,4,5];
        arr1 = [7,8,9];
        //数组的toString把用字符串的形式展示
        // slice(从该位开始截取,截取到该位)||(一个参数表示从第几位开始截取一直截取到最后,负数表示从倒数第几个开始截取)
        var newArray = arr.slice(1,3);
        //join数组之间用join(“”)里面的参数连接成字符串
        eg.arr.join("-")//-->"1-2-3-4-5"
        arr.split('-')//"与join互逆"

数组方法的应用

1.对象按年龄排序

        var cheng = {
            name : 'cheng',
            age : 18,
            sex : 'male'

        }
        var deng = {
            name : 'deng',
            age : 40,
            sex : 'male'

        }
        var zhang = {
            name : 'zhang',
            age : 20,
            sex : 'male'

        }
        var arr = [zhang,deng,cheng];
        arr.sort(function(a,b){
            return a.age - b.age;//升序
            // return b.age - a.age;//降序
        });

2.按字符串长度排序

        var arr = ['ac', 'weer', 'sfd', 'adfhg', 'q', 'seraffggd', 'safaef'];
        arr.sort(function (a, b) {
            return a.length -b.length;//升序
            // return b.length - a.length;//降序
        });

3.根据字节长度排序

        function retBytes(str) {
            var count = str.length;
            for (var i = 0; i < str.length; i++) {
                if (str.charCodeAt(i) > 255) {
                    count++;
                }
            }
            return count;
        }
        var arr = ['ac邓', 'weer', 'sfd老邓', 'adfhg', 'q', 'seraffggd', 'safaef'];
        arr.sort(function (a, b) {
            return retBytes(a) - retBytes(b);
            return retBytes(b) - retBytes(a);
        });

4.join的应用(连接字符串)


        var str = 'alibabb';
        var str1 = 'baidu';
        var str2 = 'tencent';
        var str3 = 'toutiao';
        var str4 = 'wangyi';
        var str5 = 'xiaomi';
        var str6 = 'nv';
        var arr = [str,str1,str2,str3,str4,str5,str6];
        console.log(arr.join("")
 

类数组

//类数组(eg.arguments:像数组但是不能使用数组的方法)
        var obj = {
            '2' : 'a',
            '3' : 'b',
            '4' : 'c',
            'length' : 3,
            'push' : Array.prototype.push,
            'splice' : Array.prototype.splice
        }
 //属性要为索引(数字)属性,必须有length属性,最好加上push
 //优点
        Array.prototype.push = function(target){
            this[this.length] = target;
            this.length ++;
        }
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-28 00:12:45  更:2021-07-28 00:13:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/5 23:27:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码