热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

这篇文章主要介绍了一些老手都不一定知道的JavaScript技巧,需要的朋友可以参考下

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

1、截断数组与数组长度

代码如下:
var 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)

这时arr1就变成了 1,2,3,4,5,6

3、浏览器特征检测

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

代码如下:
if(window.opera){
    alert("是opera")
}else{
      alert("不是opera")
}

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

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

代码如下:
var obj=[];
 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("不是字符串");
 


推荐阅读
author-avatar
就是!有梦想
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有