前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >javascript大法好,不用记

javascript大法好,不用记

作者头像
前朝楚水
发布2018-04-02 16:10:47
6730
发布2018-04-02 16:10:47
举报
文章被收录于专栏:互联网杂技

数组的操作


Array.prototype.toString ( )

把数组转变为字符串,返回字符串,arr.toString();


Array.prototype.toLocaleString ( )

这个也是把数组转变为字符串,返回字符串,但是带有本地字符串格式,主要是日期方面有不一样,arr.toString();


Array.prototype.concat ( [ item1 [ , item2 [ , … ] ] ] )

把数组链接在目标数组上,并且返回目标数组,targetArr.concat(2,3);//可以直接链接数组内容

targetArr.concat(arr);//可以直接链接数组对象

targetArr.concat(arr,arr1);//可以直接链接多个数组对象


Array.prototype.join (separator)

把数组每个元素转变为某种分隔符链接的字符串,返回形成的字符串

arr.join("+”);//把数组元素以加号相加形成字符串


Array.prototype.push ( [ item1 [ , item2 [ , … ] ] ] )

向数组最后添加元素,返回新的数组的长度(操作数组本身,不存在新创建一个数组

arr.push(item);//可以添加一个或者多个


Array.prototype.unshift ( [ item1 [ , item2 [ , … ] ] ] )

向数组开始添加元素,返回新的数组的长度(操作数组本身,不存在新创建一个数组

arr.push(item);//可以添加一个或者多个


Array.prototype.pop ( )

删除数组最后一个元素,并且返回最后一个元素

arr.pop();//返回最后一个元素


Array.prototype.shift ( )

向数组开始删除元素,返回删除的元素(操作数组本身,不存在新创建一个数组

arr.shift(item);//可以添加一个或者多个


Array.prototype.splice (start, deleteCount [ , item1 [ , item2 [ , … ] ] ] )

特别神奇的方法,从指定位置删除字符串个数,然后从哪个位置添加想要添加的元素,返回新的数组

arr. splice(3,4,”item”)//从第3个元素开始,删除4个元素,然后从第3个元素后添加item,item可以是多个


Array.prototype.reverse ( )

颠倒数组中的元素,并且返回颠倒后的数组

arr.reverse();


Array.prototype.slice (start, end)

截取数组元素,传入元素序号,返回截取到的部分,(不包括end序号对应元素)

arr.slice(3,5);//返回3,4对应的元素


Array.prototype.sort (comparefn)

数组排序,返回新的数组,可以按照字母排序,或者数字排序,默认为从小到大

arr.sort()//小到大,针对于字母

arr.sort(a-b)//针对于数字,根据a与b的大小,可以反向排序


下面是新方法


Array.prototype.reduceRight ( callbackfn [ , initialValue ] )

与reduce使用方式一样,只是累计方向不一样


Array.prototype.reduce ( callbackfn [ , initialValue ] )

累加,返回这些元素相加的和

arr.reduce(function(index1,index2){

return index1+index2;

})


Array.prototype.forEach ( callbackfn [ , thisArg ] )

forEach为每个元素执行对应的方法,不会返回新的数组;arr.forEach(function(item,index){

console.log(item);//item代表每个元素,index代表元素序号

});

只是让里面的数字去在程序里面执行代码,并不会有对数组的操作


Array.prototype.map ( callbackfn [ , thisArg ] )

formap为每个元素执行对应的方法,并且可以返回一个新的数组;arr.map(function(item,index){

return item*2;

console.log(item);//item代表每个元素,index代表元素序号

});

与forEach不同的是,这个会对数组进行操作,形成新的数组,上面的案例会形成一个新的数组,数组中的元素增大两倍


Array.prototype.every ( callbackfn [ , thisArg ] )

检测数组中的每一项是否符合条件,每一项符合返回true

arr. every(function(item,index){

return item>0;

})


Array.prototype.some ( callbackfn [ , thisArg ] )

检测数组中的 某一项是否符合条件,只要有一项符合返回true

arr. every(function(item,index){

return item>0;

})


Array.prototype.lastIndexOf ( searchElement [ , fromIndex ] )

与indexOf一样,只是从最后开始寻找


Array.prototype.indexOf ( searchElement [ , fromIndex ] )

方法返回在该数组中第一个找到的元素位置,如果它不存在则返回-1。

arr.indexOf();


Array.prototype.filter ( callbackfn [ , thisArg ] )

创建一个新的匹配过滤条件的数组。

arr.filter(function(item){

return item>1;//这个就是条件,item代表每个元素

})


字符串

String.prototype.toString ( )

String.prototype.valueOf ( )

var bbb = {

i: 10,

toString: function() {

console.log('toString');

return this.i;

},

valueOf: function() {

console.log('valueOf');

return this.i;

}

}

alert(bbb);// 10 toString

alert(+bbb); // 10 valueOf

alert(''+bbb); // 10 valueOf

alert(String(bbb)); // 10 toString

alert(Number(bbb)); // 10 valueOf

alert(bbb == '10'); // true valueOf

alert(bbb === '10'); // false

这有点像java

toString() 方法可把一个逻辑值转换为字符串,并返回结果

Math 和 Error 对象没有 valueOf 方法。

基本上,所有JS数据类型都拥有valueOf和toString这两个方法,null除外。它们俩解决javascript值运算与显示的问题。

JavaScript中valueOf函数方法是返回指定对象的原始值


String.prototype.trim ( )

去掉字符串两边的空格

string.trim();

stssssssssasASa


String.prototype.toLocaleUpperCase ( )

String.prototype.toUpperCase ( )

String.prototype.toLocaleLowerCase ( )

String.prototype.toLowerCase ( )

转变为大写或者小写


String.prototype.substring (start, end)

String.prototype.slice (start, end)

这两个方法一样

返回字符串的一个子串,传入参数是起始位置和结束位置

string.substring(1,4);


String.prototype.charCodeAt (pos)

返回指定位置的Unicode

string.charCodeAt(1)


String.prototype.substr(start, length)

返回字符串的一个子串,传入参数是起始位置和长度

string.substr(1,4);


String.prototype.split (separator, limit)

通过将字符串划分成子串,将一个字符串做成一个字符串数组。

var arr = string.split("”);//把字符串分开为数组


String.prototype.search (regexp)

执行一个正则表达式匹配查找。如果查找成功,返回字符串中匹配的索引值。否则返回 -1 。

var index1 = a.search(re);


String.prototype.replace (searchValue, replaceValue)

用来查找匹配一个正则表达式的字符串,然后使用新字符串代替匹配的字符串。

var result1 = string.replace(re,"Hello");


String.prototype.match (regexp)

var re = new RegExp(/^\w+$/);

var is_alpha1 = a.match(re);


String.prototype.lastIndexOf (searchString, position)

String.prototype.indexOf (searchString, position)

返回字符串中一个子串第一处出现的索引(从左到右搜索)。如果没有匹配项,返回 -1 。

string.indexOf("l");

string.indexOf(“l”,start);//可以加一个参数,代表从第几个开始查找


String.prototype.concat ( [ string1 [ , string2 [ , … ] ] ] )

将两个或多个字符的文本组合起来,返回一个新的字符串。

string1.concat(string2);


String.prototype.charAt (pos)

返回指定位置的字符。

string.charAt(0);


math对象

max ( [ value1 [ , value2 [ , … ] ] ] )

min ( [ value1 [ , value2 [ , … ] ] ] )

pow (x, y)

reg正则,booer,math,string,arr,obj,number,date,function,window全局,error,json

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 交互设计前端开发与后端程序设计 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档