javaScript基础03数组..

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <title>javascript基础练习03</title>
  6     <script>
  7         // 简单数据类型 Number String Boolean null undefined
  8
  9         // 复杂数据类型 对象,方法.,引用类型
 10
 11         // 简单数据类型存放在栈上面,先进后出.
 12
 13         // 复杂数据类型的地址放在栈上面,通过栈找到堆存放的具体内容,后执行.
 14
 15         function person (name) {
 16             this.name = name;
 17         }
 18
 19         var p = new person("zhang");
 20
 21         function fn (person) {
 22
 23             person.name = "li";
 24         }
 25         fn(p);
 26         console.log(p.name);
 27
 28         //总结:函数把对象当做参数传递,传递的是地址,传址,并没有划出一份单独的空间
 29
 30         // 内置对象 内置对象内置对象内置对象
 31
 32
 33         //*********************************
 34         //*******************++++++++++______________+++++
 35
 36
 37         var num = new Uint32Array(2); //在num数组里面,创建2个随机整数元素
 38
 39
 40         window.crypto.getRandomValues(num);
 41
 42         console.log(num);
 43
 44
 45         // 判断是否是日期对象?
 46
 47         date instanceof Date
 48
 49         var date = new Date();
 50
 51         date.getMonth();//月份从0开始算
 52
 53         // 数组应用:
 54
 55         // 如何判断一个数据是否是数组?
 56             // * instanceof * 判断一个变量是否是一个构造函数实例出来的对象
 57
 58             // nums instanceof Array;
 59         var nums = 1;
 60         console.log(!!nums);// ! 取反,!! 转换成boolean;
 61
 62
 63         // 栈:
 64         //     先进后出
 65
 66             // push() //往入口处最后添加一个元素,返回数组长度
 67
 68             // pop()//弹栈,从入口处弹出一个元素,返回该元素之
 69
 70
 71         // 队列:
 72
 73             // 先进先出
 74
 75         //     push() 在队列后面添加一个元素
 76
 77         // shift() 从最前面取出一个元素,为最早放进去的元素
 78
 79
 80         // 排序
 81             // sort 从小到大
 82
 83                 // 注意,默认的sort排序,是从元素的最高位到最低位,一一进行对比,会造成20小于1000的现象,!!因此需要改进
 84
 85                 // 需要在sort()里面加上一个函数
 86
 87                 function compare(a,b) {//引用之后,就是比较的相邻的元素
 88                     return a -b;
 89                 }
 90                 var nums = [1000,20];
 91
 92                 nums.sort(compare);
 93                 console.log(nums);
 94
 95
 96                 //手写sort模拟排序
 97
 98                 function mySort(arr,compare) {
 99                     for (var i = 0;i < arr.length - 1;i++) {
100                         // console.log("一"+arr.length);
101
102                         for (var j = 0;j < arr.length -1;j++) {
103
104                             if (compare(arr[j],arr[j +1]) > 0) {
105                                 // console.log("二"+arr.length);
106                                 var temp = arr[j];
107                                 arr[j] = arr[j + 1];
108                                 arr[j + 1] = temp;
109                             }
110                         }
111                     }
112                     return arr;
113                 }
114
115                 var larry = [10002,20]
116                 var result = mySort(larry,function (a,b) {
117                     return a - b;
118                 });
119
120                 console.log(result);
121             // reverse 翻转
122
123
124             //数组清空:
125
126             var arr = [1,2,34,5];
127
128             // arr.splice(从哪开始,删除多少个)
129
130             arr.splice(0,arr.length);
131
132
133             //数组填充 fill:
134             var arr = [1,2,34,5];
135
136             console.log(arr.fill("c",1,3));
137
138
139             // every() 通过函数判断数组中的每个元素,是够通过测试,返回True或false
140
141             var arr = [1,2,34,5];
142
143             function isThreshold(arr){
144                 return arr > 40;
145             }
146
147             console.log(arr.every(isThreshold));
148
149
150             // 数组元素字符串拼接:
151             var arr = [1,2,34,5];
152             console.log(arr.join("|"));
153
154             // filter 过滤数组中的每个元素,并且生成一个新的数组:
155             var arr = [1,2,34,5];
156
157             function isThreshold(arr) {
158                 return arr > 3;
159             }
160
161             var acc = arr.filter(isThreshold);
162             var acc1 = arr.filter(function (item) {
163
164
165                 return item > 30;
166             });
167             console.log(acc1);
168             console.log(acc);
169
170             // 用indexOF查找一个数组中制定元素的所有下标
171
172             var arr = ["a",1,2,3,"a",24,2,5,"a","c",216,1,"a",123,23,4,];
173             var indexArry = [];
174             var i = 0;
175             while (true) {
176
177                 var index = arr.indexOf("a",i);//查找"a"的下标,从i开始;
178                 if (index != -1) {
179                     i = index+1;
180                     var bindex = index;
181                     indexArry.push(bindex);
182                 }
183                 else{
184                     break;
185                 }
186             }
187
188             console.log(indexArry); //[0, 4, 8, 12]
189
190
191         //数组去重..
192
193
194     </script>
195 </head>
196 <body>
197
198 </body>
199 </html>

原文地址:https://www.cnblogs.com/huasongweb/p/9734419.html

时间: 2024-11-09 19:26:22

javaScript基础03数组..的相关文章

JavaScript基础之数组的重排序

JavaScript基础之数组的重排序 数组(Array)算是继Object之后我们最常用到的类型了.与其他语言不同的是,javascript数组的每一项可以保存任何类型的数据,并且数组的大小是可以动态调整的. JavaScript已经为我们提供了两个数组重排序的方法,reverse()和sort() 方法. 其中reverse()方法会反转数组项的顺序.举个栗子: var values = [18,4,56,1,"a","b","abc"];

JavaScript 基础回顾——数组

JavaScript是无类型语言,数组元素可以具有任意的数据类型,同一个数组的不同元素可以具有不同类型.数组的元素设置可以包含其他数组,便于模拟创建多维数组. 1.创建数组 在JavaScript中,创建数组可以使用两种方式 (1)使用 "[]" 创建. <script type="text/javascript"> var arr=[];  //创建空数组 var arr=['北京',0,true,'上海','代码里','www.daimali.com

JavaScript基础 reverse() 数组倒置

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

JavaScript基础——使用数组

Array对象提供存储和处理一组其他对象的一种手段.数组可以存储数值.字符串或其他JavaScript对象.创建JavaScript数组有几种不同的方法.例如,下面的语句穿件同样的驻足的3个相同的版本: var arr = ["one","two","three"]; var arr2 = new Array(); arr2[0] = "one"; arr2[1] = "two"; arr2[2] = &q

JavaScript 基础(二)数组

字符串, JavaScript 字符串就是用'' 和""括起来的字符表示. 字符字面量, \n 换行, \t 制表, \b 退格, \r 回车, \f 进纸, \\ 斜杠,\' 单引号(') ,\" 双号(") \xnn 以十六进制代码nn 表示的一个字符(其中n为0~F) \unnnn以十六进制代码nnnn表示的一个Unicode字符. 字符串的特点,字符换一旦创建就不能改变,要变某个变量保存的字符串,首先要销毁原来的字符串,然后在用另一个包含字符 串填充该变量.

javascript基础之数组一

<script type="text/javascript"> //求数组中最大的数 var arr=[123,456,789,657,432,564]; var arrMax= getMaxValue(arr); alert(arrMax); function getMaxValue(arrInt) { var max=arrInt[0]; for(var i=0;i<arr.length;i++) { if(arrInt[i] > max) { max=ar

Web开发——JavaScript基础(数组)

. 当前参考学习<JavaScript语言精粹> 1.数组字面量 一个数组字面量是在一对方括号中包围零个或多个用逗号分隔的值的表达式.数组字面量可以出现在任何表达式可以出现的地方.数组的第一个值将获得属性名'0',第二个值将获得属性名'1',依次类推: 1 // numbers继承来自Array.prototype,所以numbers继承了大量有用的方法. 2 // 同时numbers也有一个诡异的lenght属相,而numbers_object则(见下文中)没有 3 var empty =

JavaScript 基础(六) 数组方法 闭包

在一个对象中绑定函数,称为这个对象的方法.在JavaScript 中,对象的定义是这样的: var guagua = { name:'瓜瓜', birth:1990 }; 但是,如果我们给瓜瓜绑定一个函数,就可以做更多的事情. var guagua = { name:'瓜瓜', birth:1990, age:function(){ var y = new Date().getFullYear(); return y - this.birth; } } guagua.age; // functi

javascript基础之数组对象

一.定义数组的方法: 定义了一个空数组: var myArray =new Array(); 指定有n个空元素的数组: var myArray=new Array(n); 定义数组并赋值: var myArray =[1,2,3]; 数组元素的使用: 数组名[下标]=值; 二.数组属性:length用法 数组对象.length; //返回数组长度 三.数组方法: concat();连接两个或更多的数组,并返回结果. var myArray=[1,2]; document.write(myArra