前端开发JavaScript小技巧

微信前端开发支付入口
微信小程序开发web前端
web前端微信开发教程

1,Math.max 可以实现数组中最大的一项
因为Math.max参数里面不支持Math.max([param1,param2])也就是数组

但是它支持Math.max(param1,param2,param3),所以可以根据刚才apply的那个特定来解决

var max = Math.max.apply(null array);

这样轻易的可以得到一个数组中最大的一项(applly会将一个一个数组转换为一个参数接一个参数的传递方法)

这块调用第一个参数给了一个null,是因为没有对象去调用这个方法,我只需用这个方法帮我运算,得到返回的结果就行,所以就直接传递了一个nukk

2,同理 Math.max 可以实现得到数组中最小的一项
var min=Math.min.apply(null,array);

3,Array.prototype.push可以实现两个数组合并

push(param1,param2…paramN)

var arr1 = new Array(‘1′,’2’);
var arr2 = new Array(‘3′,’4’);

Array.prototype.push.apply(arr1,arr2);

通常在什么情况下,可以使用apply类似Math.min等之类的特殊用法:

一般在目标函数只需要n个参数列表,而不接收一个数组的形式([param1[,param2[,…[,paramN]]]]),可以通过apply的方式巧妙地解决这个问题!

4,字符串转数组
string.split(separator,limit);
separator参数可以是一个字符串或者一个正则表达式
limit 可以限制被分割的片段数量
var string = “0123456789”;

string.split(” “); // [“0”, “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”,”9″]

5,字符串拼接
5.1 concat (很少使用)
var name = ‘C’.concat(‘a’,”t’) ; //Cat
5.2 ‘+’运算符
var name = ‘C’+’a’+’t’; //Cat

6,数组转字符串

array.join(separator)

join方法把一个array构造称一个字符串,先把array中的每个元素构造成一个字符串,接着用一个separator分隔符 把她们连接再一起,

var name= [‘a’,’b’,’c’];
name.join(”); //’abc’
name.join(‘-‘);//’a-b-c’;

7,number转字符串
number.toString()可以简写为String(number);
String(22) // ’22’;
var num = 22; num.toString(); // ’22’

8,字符串转整数

parseInt();
parseInt(’22’);//22

9,可以使用typeof来获取一个变量是否存在
typeof一般可以返回 number,boolean,string,function,object,undefined
if(typeof a !=”undefined”){}
对于Array,Null等特殊对象使用typeof一律返回object。这正是typeof的局限性

10,可以使用instanceof获取一个对象是否为数组或判断某个变量是否是某个对象的实例
var a=new Array();alert(a instanceof Array);会返回true
alert(a instanceof Object) Array的prototype属性构造于Object,Array的父级是Function

微信端做前端开发
前端 开发微信公众号
前端开发微信公众号
» 本文来自:前端开发者 » 《前端开发JavaScript小技巧》
» 本文链接地址:https://www.rokub.com/7221.html
» 您也可以订阅本站:https://www.rokub.com
赞(0)
分享到: 更多 (0)

评论 抢沙发