JavaScript 11.01

JavaScript第五天

1.1 数组的概念


我们现在用来存储数据的内容是变量。是编程中最小的存储单元,因为一个变量只能存储一个数据,再次赋值的时候 会将以前的数据覆盖。
例如 var  a = 10;   a = 20 ;

有的时候 我们需要存储多个数据  所以就有了数组的概念。


数组(Array)是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式。 这些有序排列的同类数据元素的集合称为数组。
   
数组是用于储存多个相同类型数据的集合。

1.2 数组的声明


<script type="text/javascript">
     
/* 创建一个空数组 */
var  arr1 = new Array();

/* 创建一个数组 初始容量是 5 */
var  arr2 = new Array(5);

/* 创建一个数组 初始数据是 5 10 15 20 */
var  arr3 = new  Array(5,10,15,20);

/* 字面量形式创建数组 */
/* 创建一个空数组 */
var  arr4 = [];
/* 创建一个数组 初始值是5 */
var  arr5 = [5];
/* */
var  arr6 = [5 , 10 , 15 , 20];


       </script>

1.3 数组中数据的存取

A 数组中数据的操作都是通过操作下标/索引值完成的。
B 数组会对数组中的容量位置添加一个编号 编号称之为索引值/下标。下标从0开始
C js中数组的容量不够的时候 会自动扩容

          var  arr = [];

           /* 将220 存储到 数组索引为0的位置 */
arr[0] = 220;
arr[1] = 230;
arr[2] = 240;
arr.push(250,123,345,234,123,3265,2354,3456,4567,123);

           
           console.log(arr);
arr.splice(3,0,245);   // splice(起始索引,长度,插入的数据)
console.log(arr);

           arr.pop(); // 删除最后一个
           arr[2] = 440; // 替换指定索引位置的数据

           
           var  a = arr[0];  // 根据索引值获取数据
var  b = arr[0];

           // 遍历数组       *****************************
           for(var i=0;i<arr.length;i++) {
var c = arr[ i ];
console.log(  c );
}

1.4 数据源思想


 <button  onclick="haha()">改变颜色</button>
     
       <script type="text/javascript">
     
var arr = [  "red" , "yellow" ];
var i = 0;

function  haha(){
document.body.style.backgroundColor = arr[ i%arr.length ];
i++;
}
       </script>

1.5 冒泡排序


算法:  排序算法  搜索算法等等


A 木桶排序

B 冒泡排序

第一轮
  <script type="text/javascript">
     
var  arr = [6,5,3,1,8,7,2,4];


/* 1 */
for(var   j=0;  j<arr.length-1 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}

</script>


第1-7

 <script type="text/javascript">
     
var  arr = [6,5,3,1,8,7,2,4];


/* 1 */
for(var   j=0;  j<arr.length-1 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}

for(var   j=0;  j<arr.length-2 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}

for(var   j=0;  j<arr.length-3 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}

for(var   j=0;  j<arr.length-4 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}

for(var   j=0;  j<arr.length-5 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}

for(var   j=0;  j<arr.length-6 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}


for(var   j=0;  j<arr.length-7 ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}


console.log(arr)

       </script>



半成品

<script type="text/javascript">
     
var  arr = [6,5,3,1,8,7,2,4];

for(var i=1;i<arr.length;i++){
for(var   j=0;  j<arr.length-i ; j++ ){

var  a = arr[j];
var  b = arr[j+1];

if(a>b){
arr[j] = b;
arr[j+1] = a;
}
}
}

console.log(arr)
       </script>


成品


       <script type="text/javascript">
     
var  arr = [6,5,3,1,8,7,2,4];
var len = arr.length;

for(var i=1;i<len;i++){
for(var   j=0;  j<len-i ; j++ ){
if(arr[j]>arr[j+1]){
var temp =  arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
console.log(arr)
       </script>

 

posted @ 2021-11-01 09:57  吴光熠  阅读(47)  评论(0)    收藏  举报