数组的方法二

一、排序

reverse()  

 作用:将数组元素逆序(数组反转)

 返回值:逆序后的数组

 是否影响原数组:是

var arr =[34,56,23,12];

console.log(arr.reverse());     // [12, 23, 56, 34]

console.log(arr);                    // [12, 23, 56, 34]


sort()

 作用:将数组元素按字符串的编码(ASCII编码)从小到大的排序

 返回值:排序后的数组

 是否影响原数组:是

var arr =[4,2,100,3,5,true,"a"]

console.log(arr.sort());     // [100, 2, 3, 4, 5, 'a', true]

console.log(arr);             //  [100, 2, 3, 4, 5, 'a', true]

重点:数组中的数字排序  

 sort(function(a,b){ return a - b})  从小到大

 sort(function(a,b){ return b - a})  从大到小

var arr =[4,2,100,3,5]

console.log(arr.sort(function(a,b){return b - a}))

console.log(arr)


二、转换

toString()  

作用:将数组转为字符串

返回值: 转换后的字符串 (以逗号分隔)

是否影响原数组:否

var arr = [34,"hello",true,false,45,12];

console.log(arr.toString());       //  34,hello,true,false,45,12

console.log(arr);                     //   [34,"hello",true,false,45,12]

用于简单变量转成指定进制的字符串

  toString(进制数)

var iNum = 88;

console.log(iNum.toString(2));      //1011000

console.log(iNum.toString(8));      //130

console.log(iNum.toString(16));     //58


join  

作用:将数组转换为以指定连接符连接的字符串

返回值:转后的字符串

是否影响原数组:否

var arr = [34,"hello",true,false,45,12];

console.log(arr.join('*'));       //   34*hello*true*false*45*12

console.log(arr)


for-in

循环作用单一,只能遍历数组和对象。对象只能使用for-in遍历

for(变量 in  数组/对象 ){

       //循环操作

}

案例

var arr = [1,4,5,3,5];

for(var i in arr){

      console.log(i + "----" + arr[i]);

}


var obj = {

  name:"张三",

  age:89,

  sex:"男"

}

for(var key in obj){

  console.log(key + "==" + obj[key] )

}


值传递和引用传递

栈:先进后出

堆:队列优先,先进先出

一般情况是简单数据类型在栈内存中维护(值传递),引用数据类型在堆内操中维护(引用传递)

简单数据类型:Number、String、Boolean、null、undefined

引用数据类型(复杂数据类型):数组、对象


严格模式(ES5)

use strict

启动严格模式:只能加在作用域的开头部分,建议加在函数作用域的开头部分

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容