Array数组和function函数

Array数组

构造函数创建数组

1.使用Array对象创建(var arr(名称) = new Array();)

2.使用字面量的方式(直接赋值)(var arr = [1, 2, 3, 4, 5])

获取数组中某一个值

arr[索引] 索引从0开始,索引最大值取到数组的长度减一

for...in...循环 也可循环对象

for(var key in arr){

console.log(key,arr[key])

}

数组中常用函数

  • push():向数组末尾添加一个元素,返回数组长度
  • unshift():向数组前面添加一个元素,返回数组长度
  • pop():删除数组中最后一个元素,并返回
  • shift():删除数组中最前面的一个元素,并返回
  • sort():进行升序(注:先将数组中的所有元素转换成字符串之后再进行)
  • reverse():倒序
  • 如果想将字符串类型的数组进行降序排列:可以先用sort(),然后再使用reverse()进行倒序
  • join():将数组以某个符号进行拼接,并返回一个字符串
  • concat():将某个元素添加到数组末尾和push有点像
  • splice():从指定位置删除指定长度的元素
  • slice():复制从指定位置到结束位置的元素(注:取不到结束位置的元素)
  • indexOf():获取指定元素的索引indexOf,如果没有则返回-1

代码

<script>
    var arr = [15, 91, 46, 36, 87];
    // 原始数据
    document.write("原始数据: ");
    document.write(arr + '<br/>');
​
    // 数组末尾添加
    arr.push(12);
    // 数组开头添加
    arr.unshift(10)
    document.write("添加数据: ");
    document.write(arr + '<br/>');
​
    // 删除末尾一个数据
    arr.pop();
    // 删除开头一个数据
    arr.shift()
    document.write("删除开头和结尾添加的数据: ");
    document.write(arr + '<br/>');
​
    // 从小到大排序
    arr.sort();
    document.write("从小到大排序: ");
    document.write(arr + '<br/>');
​
    // 数组反转
    arr.reverse();
    document.write("数组反转: ");
    document.write(arr + '<br/>');
​
    // 将数组转换为字符串 用逗号隔开
    arr = arr.join(',');
    document.write("将数组转换为字符串 用逗号隔开: ");
    document.write(arr + '<br/>');
​
    // 将字符串转换为数组 根据逗号分隔
    arr = arr.split(',');
    document.write("将字符串转换为数组 根据逗号分隔: ");
    document.write(arr + '<br/>');
​
    // 截取字符串
    var del = arr.splice(0, 2);
    document.write("截取字符串<br/>");
    // 删除后的数组
    document.write("删除后的: ");
    document.write(arr + '<br/>');
    // 所删除的数据
    document.write("所删除的数据: ");
    document.write(del + '<br/>');
​
    // 复制数据 对原数据没有影响
    var fu = arr.slice(0, 2)
    document.write("复制数据 对原数据没有影响: ");
    document.write(arr + '<br/>');
    document.write('所复制的数据: ' + fu + '<br/>');
​
    // 获取索引
    var inde = arr.indexOf('15');
    document.write("获取15的索引: ");
    document.write(inde + '<br/>');
</script>

效果图

清空数组

直接赋值为空 arr = [];

长度设为0 arr.length = 0;

删除数组中数据 splice(0,arr.length);

冒泡排序

 

var arr = [97, 64, 28, 34, 86, 46];
console.log(arr);
// 循环次数
for (var i = 0; i < arr.length - 1; i++) {
    // 排序到最后之后 该值就不需要再进行比较了
    for (var m = 0; m < arr.length - i - 1; m++) {
        // 小到大
        if (arr[m] > arr[m + 1]) {
            // 普通换值
            // var num = arr[m];
            // arr[m] = arr[m + 1];
            // arr[m + 1] = num
            // 解构赋值
            [arr[m], arr[m + 1]] = [arr[m + 1], arr[m]];
        }
        // 大到小
        // if (arr[m] < arr[m + 1]) {
        // 普通换值
        // var num = arr[m];
        // arr[m] = arr[m + 1];
        // arr[m + 1] = num
        // 解构赋值
        // [arr[m], arr[m + 1]] = [arr[m + 1], arr[m]];
        // }
    }
}
console.log(arr);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值