一些js函数

三目运算符

a > b? 'a':'b'

上述代码解析后就是

if(a>b){
    a
}else{
    b
}

如果a > b 成立,则是a,不成立则是b。

push与concat的区别

例子:

var arr = [];
arr.push(1);
arr.push(2);
arr.push([3, 4])
arr.push(5, 6);
arr = arr.concat(7);
arr = arr.concat([8, 9]);
arr = arr.concat(10, 11);
for(var i in arr){
  console.log(i+"-----"+arr[i]);
}

打印结果如下:

index.js [sm]:180 0-----1
index.js [sm]:180 1-----2
index.js [sm]:180 2-----3,4
index.js [sm]:180 3-----5
index.js [sm]:180 4-----6
index.js [sm]:180 5-----7
index.js [sm]:180 6-----8
index.js [sm]:180 7-----9
index.js [sm]:180 8-----10
index.js [sm]:180 9-----11

区别:

  • push 遇到数组参数时,把整个数组参数作为一个元素;而 concat 则是拆开数组参数,一个元素一个元素地加进去。  
  • push 直接改变当前数组;concat 不改变当前数组。
原文地址:https://www.cnblogs.com/xiede/p/9515725.html