【JavaScript】数组 ③ ( JavaScript 数组长度 | 修改数组长度 | 数组案例 )

文章目录

一、JavaScript 数组长度


1、数组长度

在 JavaScript 中 , 数组长度 可以通过 数组变量的 length 属性 获取 , 该属性 返回 数组中的元素数量 , 也就是 数组长度 ;

下面声明了一个数组变量 , 有 3 个元素 ;

js 复制代码
var arr = ['blue', 'red', 'green'];

arr 数组变量的 length 属性 , 就是 数组长度 ;

cpp 复制代码
arr.length

代码示例 :

js 复制代码
var arr = ['blue', 'red', 'green'];
console.log(arr.length);  // 输出 : 3

完整代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <!-- 设置 meta 视口标签 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JavaScript</title>
    <style></style>
    <script>
        // 数组长度

        var arr = ['blue', 'red', 'green'];
        console.log(arr.length); // 输出 : 3
    </script>
</head>

<body>
</body>

</html>

执行结果 :

2、修改数组长度

JavaScript 数组 的 大小 是 可以 动态调整 的 , 通过修改 数组 的 length 属性 可以 增加或减少 数组的大小 ;

  • 如果 减少 数组的大小 , 则被减少的部分元素 , 直接从数组中删除 ;
  • 如果 增加 数组的大小 , 则增加的部分 , 使用 undefined 值填充 ;

代码示例 :

js 复制代码
var arr = [1, 2, 3];  
arr.length = 5;  
console.log(arr);  // 输出:[1, 2, 3, undefined, undefined]

完整代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <!-- 设置 meta 视口标签 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JavaScript</title>
    <style></style>
    <script>
        // 数组长度

        var arr = [1, 2, 3];

        // 数组内容 : [1, 2, 3, undefined, undefined]
        arr.length = 5;

        // 输出 : [1, 2, 3, empty x 2]
        console.log(arr);
    </script>
</head>

<body>
</body>

</html>

执行结果 :

二、数组案例


1、求数组元素平均值

给定一个数组 ,

js 复制代码
var arr = [1, 2, 3, 4, 5];

求该数组的平均值 ;

首先 , 遍历累加该数组 ;

然后 , 将累加和 除以 数组长度 , 得到平均值 ;

代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <!-- 设置 meta 视口标签 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JavaScript</title>
    <style></style>
    <script>
        // 数组长度

        // 数组声明与初始化
        var arr = [1, 2, 3, 4, 5];

        // 累加和
        var sum = 0;

        for (var i = 0; i < arr.length; i++) {
            sum += arr[i];
        }

        // 输出 : 累加和为 : 15
        console.log("累加和为 : " + sum);

        var avg = sum / arr.length;
        // 输出 : 平均值为 : 3
        console.log("平均值为 : " + avg);
    </script>
</head>

<body>
</body>

</html>

执行结果 :

2、求数组元素最大值

给定一个数组 ,

js 复制代码
var arr = [3, 9, 5, 2, 7, 4];

求该数组的最大值 ;

首先 , 定义一个变量存储当前获取的最大值 ;

然后 , 遍历数组每个元素 , 如果遍历到的值大于 最大值变量 则赋值给 该变量 ;

遍历完毕后 , 即可得到数组中的 最大值 ;

代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <!-- 设置 meta 视口标签 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JavaScript</title>
    <style></style>
    <script>
        // 数组长度

        // 数组声明与初始化
        var arr = [3, 9, 5, 2, 7, 4];

        // 最大值
        var max = 0;

        for (var i = 0; i < arr.length; i++) {
            if (arr[i] > max) {
                max = arr[i];
            }
        }

        // 输出 : 最大值为 : 9
        console.log("最大值为 : " + max);
    </script>
</head>

<body>
</body>

</html>

执行结果 :

相关推荐
杨丰玮41815 小时前
暑假Java知识点回顾:类与对象知识总结
java·开发语言
lilian23315 小时前
Harmony os 技术实战|拼豆制图48:把个人页字符串路由改成可穷尽的类型协议
前端·华为·harmonyos
Patrick在香港15 小时前
Python asyncio vs 多线程 vs 多进程——同一份 HKOpenDataClient 实测 5/30/100 endpoint,谁是真的银弹
开发语言·python
牛油果子哥q15 小时前
C++异常处理万字详解:try-throw-catch机制、栈展开、标准异常体系、自定义异常、工程规范、内存泄漏避坑
开发语言·jvm·c++
Metaphor69215 小时前
使用 Python 设置 Excel 文件属性
开发语言·python·excel
咏方舟【长江支流】15 小时前
【前端2】单据编辑 -订单单据主子表,万能模板行,自定义添加行
前端·前端框架·状态模式·咏方舟-长江支流
qq_4523962315 小时前
第六篇:《CI/CD 流水线:从前端构建到自动化部署》
前端·ci/cd·自动化
咏方舟【长江支流】15 小时前
【前端1】单据编辑 -EasyUI/Vue/React/Bootstrap 主流框架实现订单单据主子表显示和编辑比较,哪个你最易入门?
前端·vue.js·easyui·咏方舟-长江支流·userbaodatagrid
艾莉丝努力练剑15 小时前
【AI大模型接入SDK】C++日志体系与spdlog封装的理论部分
开发语言·c++·ide·人工智能·学习·面试·trae
m0_5791466515 小时前
Element UI 表格合并单元格完全指南:从原理到实战
前端·vue.js·elementui