zl程序教程

您现在的位置是:首页 >  前端

当前栏目

一些老手都不一定知道的JavaScript技巧

JavaScript 技巧 一些 知道 一定 老手
2023-06-13 09:15:26 时间

一些不太常用但强大的JavaScript小技巧,新手和老手js开发人员都不一定知道。

1、截断数组与数组长度

复制代码代码如下:
vararr1=arr2=[1,2,3];

//改变arr1
arr1=[];//arr2则任然是[1,2,3]

你会发现arr1用[]方法来清空不会影响arr2的值,假如要想让arr1改变后arr2跟着一起改变,则可以这样
复制代码代码如下:

 vararr1=arr2=[1,2,3];
arr1.length=0;//注意这一步而不是arr1=[]
alert(arr2)

这时arr2也被清空了

2、数组合并

复制代码代码如下:
var arr1=[1,2,3];
var arr2=[4,5,6];
vararr3=arr1.concat(arr2);
alert(arr3)
arr3则变为
复制代码代码如下:[1,2,3,4,5,6]
其实还可以用一种简单的办法,譬如使用
复制代码代码如下:var arr1=[1,2,3];
var arr2=[4,5,6];
Array.prototype.push.apply(arr1,arr2);
alert(arr1)
这时arr1就变成了1,2,3,4,5,6

3、浏览器特征检测

看一下代码,可以判定你的浏览器是否opera

复制代码代码如下:if(window.opera){
   alert("是opera")
}else{
     alert("不是opera")
}
同样的你还可以这样
复制代码代码如下:if("opera"inwindow){
    alert("是opera")
}else{
  alert("不是opera")
}

4、检查的对象是一个数组

复制代码代码如下:varobj=[];
 if(Object.prototype.toString.call(obj)=="[objectArray]")
  alert("是数组");
  else
   alert("不是数组");
同样的,你还可以判断该对象是否是字符串
复制代码代码如下:varobj="fwe";
 if(Object.prototype.toString.call(obj)=="[objectString]")
  alert("是字符串");
  else
   alert("不是字符串");