一些老手都不一定知道的JavaScript技巧
作者:
这篇文章主要介绍了一些老手都不一定知道的JavaScript技巧,需要的朋友可以参考下
一些不太常用但强大的JavaScript小技巧,新手和老手js开发人员都不一定知道。
1、截断数组与数组长度
复制代码 代码如下:
var arr1 = arr2 = [1, 2, 3];
//改变 arr1
arr1 = []; // arr2则任然是 [1,2,3]
//改变 arr1
arr1 = []; // arr2则任然是 [1,2,3]
你会发现arr1用[]方法来清空不会影响arr2的值,假如要想让arr1改变后arr2跟着一起改变 ,则可以这样
复制代码 代码如下:
var arr1 = arr2 = [1, 2, 3];
arr1.length=0; //注意这一步 而不是 arr1=[]
alert(arr2)
这时 arr2也被清空了
2、数组合并
复制代码 代码如下:
var arr1 = [1,2,3];
var arr2 = [4,5,6];
var arr3=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)
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")
}
alert("是opera")
}else{
alert("不是opera")
}
同样的你还可以这样
复制代码 代码如下:
if("opera" in window){
alert("是opera")
}else{
alert("不是opera")
}
alert("是opera")
}else{
alert("不是opera")
}
4、检查的对象是一个数组
复制代码 代码如下:
var obj=[];
if(Object.prototype.toString.call(obj)=="[object Array]")
alert("是数组");
else
alert("不是数组");
if(Object.prototype.toString.call(obj)=="[object Array]")
alert("是数组");
else
alert("不是数组");
同样的,你还可以判断该对象是否是字符串
复制代码 代码如下:
var obj="fwe";
if(Object.prototype.toString.call(obj)=="[object String]")
alert("是字符串");
else
alert("不是字符串");
if(Object.prototype.toString.call(obj)=="[object String]")
alert("是字符串");
else
alert("不是字符串");
您可能感兴趣的文章:
- javascript 常用代码技巧大收集
- 关于javascript中的parseInt使用技巧
- javascript dom操作之cloneNode文本节点克隆使用技巧
- Javascript技巧之不要用for in语句对数组进行遍历
- JavaScript高级程序设计 学习笔记 js高级技巧
- Javascript的数组与字典用法与遍历对象的技巧
- JavaScript避免代码的重复执行经验技巧分享
- javascript学习笔记之10个原生技巧
- javascript初学者常用技巧
- JavaScript数组常用操作技巧汇总
- JavaScript常用小技巧小结
- 分享一则javascript 调试技巧
- 推荐5 个常用的JavaScript调试技巧
- Javascript优化技巧之短路表达式详细介绍
- Javascript常用小技巧汇总
- javascript 应用小技巧方法汇总
- 快速学习JavaScript的6个思维技巧
- 分享经典的JavaScript开发技巧