关于js的一些细节和返回值1:sort排序和tostring,valueof等,tostringvalueof
关于js的一些细节和返回值1:sort排序和tostring,valueof等,tostringvalueof
代码如下
<script>
// var color = "blue";
// function changeColor(){
// var anotherColor = "red";
// function swapColor(){
// var tempColor = anotherColor;
// anotherColor = color;
// console.log(tempColor) ;
// console.log(anotherColor) ;
// }
// swapColor();
// }
// changeColor()
// typeof,instanceof, Array.isArray(value)
// array.toString(),array.toLocaleString(),array.valueOf()
var colors = ["red",'blue'];
console.log(colors.length)
colors[colors.length] ='black'
console.log(colors.length)
console.log(colors)
colors[20]="rr";
console.log(colors.length)
console.log(colors)
console.log(colors[5])
console.log(colors instanceof Array)
console.log(Array.isArray(colors))
console.log("toSting:",colors.toString())
console.log("valueOf:",colors.valueOf())
console.log("toLocaleString:",colors.toLocaleString())
var toS = colors.toString();
var valueO = colors.valueOf();
var toL = colors.toLocaleString();
console.log(Array.isArray(toS));//false
console.log(Array.isArray(valueO));//true
console.log(Array.isArray(toL));//false
console.log(typeof toS)//string
console.log(typeof valueO)//obj
console.log(typeof toL)//string
//join
var jo = colors.join("*");
console.log(jo)
console.log(Array.isArray(jo))//false
console.log(typeof jo)//string
//push-返回添加后数组长度 pop-返回值是删除项 shift-返回删除项 unshift-返回添加后数组长度
var color = new Array(1,"ww");
var count = color.push("a","b");
console.log(count);
console.log(color);
var countpop = color.pop();
console.log(countpop);
console.log(color);
// 倒叙:reverse()-返回排序后数组,排序:sort()-会先调用tostring-所以都按字符串(即使是数值)来升序
var values = [1,2,3,4,5]
var vv = values.reverse();
console.log(vv)
console.log(values)
//sort 可以接受一个比较函数
//比较函数接受两个参数 -第一个在前返回负数,相等返回0,否则为正。
function compare(v1,v2){
if(v1<v2){//条件如小号放到前面还是大的放到前面,总之只要return-1满足对比后条件的都在前面
return -1//第一个在前
}else if(v1>v2){
return 1
}else{
return 0;
}
}
function compare2(v1,v2){
if(v1>v2){
return -1
}else if(v1<v2){
return 1
}else{
return 0
}
}
var val = [10,22,2,4,8]
val.sort(compare)
var vals = val.sort(compare)
console.log(val)
console.log(vals)//sort返回的是排序后的数组。
var vals2 = val.sort(compare2)//****注意:如果放到前面会安装最后排序---sort后会改变原数组的。即便储存在vals2里,但原数组val已经跟随变化。
console.log(vals2)
</script>
相关文章
- 暂无相关文章
用户点评