数组知识点2

数组

算法:即算术的方法
1.冒泡排序:先遍历数组,让挨着的两个进行比较,如果前一个比后面大,那么就把这两个数换个位置,数组遍历一遍之后,那么最后一个数字就是最大的那一个了。然后进行第二遍遍历,还是按照之前的规则,以此类推。
外层循环*内存循环=循环次数
<script>
        function BubbleSort(arr){
            for(var i=0;i<arr.length-1;i++){
                for(var j=0;j<arr.length-1-i;j++){
                    if(arr[j]>arr[j+1]){
                        var tmp;
                        tmp = arr[j]
                        arr[j] = arr[j+1]
                        arr[j+1] = tmp
                    }
                }
            }
        }
        var arr=[12,5,99,62,3,102]
        BubbleSort(arr)
        console.log(arr) 
        // [3, 5, 12, 62, 99, 102]
    </script>
2.选择排序:查找最大值的下标,根据下标去换位置,性能稍比冒泡排序高
<script>
        var arr=[12,8,25,3,52]
        function selectSort(arr){
            for(var i=0;i<arr.length;i++){
                var index=i
                for(j=i;j<arr.length;j++){
                    if(arr[index]<arr[j]){
                        index=j
                    }
                }
                var tmp
                tmp=arr[index]
                arr[index]=arr[i]
                arr[i]=tmp
            }
            console.log(arr)
            // [52, 25, 12, 8, 3]

        }
        selectSort(arr)
    </script>
3.多维数组
平拍一个数组,就是讲数组变成一个字符串,都不会改变原来arr的数据格式,只是返回一个字符串  arr.join()  arr.toString()
4.二维数组
<script>
        var arr=[1,2,3]
        var arr2 = arr
        arr2[0]=100
        console.log(arr)//[100,2,3]
        console.log(arr2)//[100,2,3]
    </script>
5.关于this(提及)
this指当前对象,一般在函数内使用
console.log(this) //window窗口
var obj= {
	fn:function(){
		console.log(this)  
  }
}
obj.fn //函数执行点前面的就是对象  定义不重要,看什么时候调用
普通函数this指向window
事件函数this指向触发事件的元素
定时器函数this指向window
箭头函数this指向父函数,没有父函数指向window
实例化对象new对象this指向含函数自己
对象属性里面的this(只是第一层)指向对象自己
attachEvent()=> this指向window
6.数组常用的方法ES5  //就是循环
(1)indexOf()  查找返回元素下标,找不到返回-1
(2)forEach()  对数组进行循环遍历,对数组中每一项运行给定函数,这个方法没有返回值,参数都是function类型的,默认有传参功能,默认是数组内容、下标及本身。
(3)map()可以返回一个全新的数组,原来数组不会受到影响。
(4)filter()  过滤器  筛选出符合条件的元素
(5)some() 有一个元素条件满足条件就返回true
(6)every() 每一个元素满足条件才会返回true
7.进制转化
toString(要转成几进制)
console.log(parseInt(num,要转的进制数))
8.ASCII128字符的编码结构,可显示32-126
9.万国码:国际通用码 utf-8
10.中国编码gbk  gb2312
11.中文 OX4e00-OX9fa5
for(var i=OX4e00;i<OX9fa5;i++){
	document.write(String,formCharCode(i))
}
发布了29 篇原创文章 · 获赞 3 · 访问量 866

猜你喜欢

转载自blog.csdn.net/qq_43756690/article/details/104151343