个人总结的一些JavaScript技巧、实用函数、简洁方法、编程细节

前端之家收集整理的这篇文章主要介绍了个人总结的一些JavaScript技巧、实用函数、简洁方法、编程细节前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

变量转换

但是转换日期(new Date(myVar))和正则表达式(new RegExp(myVar))必须使用构造函数,创建正则表达式的时候要使用/pattern/flags这样的简化形式。 

取整同时转换成数值型 

自动将其转换为数值型(如果无法转化,变为NaN) '10.567890' | 0 //结果: 10 //JS里面的所有数值型都是双精度浮点数,因此,JS在进行位运算时,会首先将这些数字运算数转换为整数,然后再执行运算 //| 是二进制或, x|0 永远等于x;^为异或,同0异1,所以 x^0 还是永远等于x;至于~是按位取反,搞了两次以后值当然是一样的 '10.567890' ^ 0 //结果: 10 - 2.23456789 | 0 //结果: -2 ~~-2.23456789 //结果: -2

日期转数值

类数组对象转数组

下面的实例用的更绝

方法1 Array.prototype.push.apply(res,arguments) //方法2 }

进制之间的转换

"C" (int).toString(8); // converts int to octal,eg. 12 => "14" parseInt(string,16) // converts hex to int,eg. "FF" => 255 parseInt(string,8) // converts octal to int,eg. "20" => 16

将一个数组插入另一个数组指定的位置

删除数组元素

大家也许会想为什么要用splice而不用delete,因为用delete将会在数组里留下一个空洞,而且后面的下标也并没有递减。

判断是否为IE

这样一句简单的话就可以判断是否为ie,太。。。

其实还有更多妙的方法,请看下面

不支持标准的ECMAscript中数组末逗号忽略的机制 var ie = !-[1,]; // 利用了IE的条件注释 var ie = /*@cc_on!@*/false; // 还是条件注释 var ie//@cc_on=1; // IE不支持垂直制表符 var ie = '\v'=='v'; // 原理同上 var ie = !+"\v1";

学到这个瞬间觉得自己弱爆了。

尽量利用原生方法

要找一组数字中的最大数,我们可能会写一个循环,例如:

max){ max = numbers[i]; } } alert(max);

其实利用原生的方法,可以更简单实现

当然最简洁的方法便是:

当前也可以这样

生成随机

函数的参数为基底,范围为2~36。 Math.random().toString(36).substring(2);

不用第三方变量交换两个变量的值

事件委派

举个简单的例子:HTML代码如下

Great Web resources

js代码如下:

利用事件委派可以写出更加优雅的:

检测ie版本

',all[0] ); return v > 4 ? v : false ; }());

javaScript版本检测

你知道你的浏览器支持哪一个版本的Javascript吗?

判断属性是否存在

有的情况下,我们有更深的结构和需要更合适的检查的时候

其实最好的检测一个属性是否存在的方法为:

检测对象是否为数组

函数传递对象

为replace方法传递一个函数

循环中使用标签

有时候循环当中嵌套循环,你可能想要退出某一层循环,之前总是用一个标志变量来判断,现在才知道有更好的方法

对数组进行去重

或者如下:

其实最优的方法是这样的

使用范例(借用评论):

查找字符串中出现最多的字符及个数

其实还有很多,这些只是我闲来无事总结的一些罢了。

原文链接:https://www.f2er.com/js/53968.html

猜你在找的JavaScript相关文章