JavaScript基础知识之方法汇总结

数组的方法

array.concat 一个数组去连接另一个数组,返回一个合成数组。var arrC=arrA.concat(arrB,'asd','sad',true,1.5); array.join 将数组用指定符号连接为一个字符串,并返回这个字符串。比用+快很多。var strA=arrA.join(",");//默认为逗号 array.pop 移除数组最后一个元素,并返回这个元素.var A=arrA.pop(); array.push 将一个或多个参数附加到数组的尾部,并返回一个新长度值。arrA.push("asd"); array.shift 移除数组的第一个元素,并返回这个元素。它比pop慢得多,原因我想应该就是这仅仅只是一个伪数组,删除第一个要将所有的元素往前推一格。var A=arrA.shift(); array.unshift 讲一个或多个参数附加到数组的头部。arrA.unshift("asd"); array.reverse 反转数组里元素的顺序。var arrB=arrA.reverse(); array.slice 对数组做一段浅复制。然后赋值两个下标之间的数组,返回一个新的数组。var arrB=arrA.slice(0,3);//将第0,1,2个元素取出,后面的3也可以不填 array.sort 对数组中的内容进行排序。arrA.sort();//默认会吧元素都转化为字符串并进行比较。当然也可以将一个比较函数作为参数传进去 arrA.sort(function(a,b){ return a-b; }); array.splice 从数组中移除一个或者多个元素,并用新的元素替代它们。var arrB=arrA.splice(0,3,'ads');//移除从下标0开始的3个元素,并用后面两个元素进行替换

函数的方法

function.apply 调用函数,传递一个被绑定到this之上的对象,和一个可选的数组作为参数数组。

方法:

number.toExponential 将这个数字转换为一个指数形式的字符串。Math.PI.toExponential(2);//3.14e+0 number.toFixed 将这个数字转换为一个十进制数形式的字符串。Math.PI.toFixed(2);//3.14,保留两位小数 number.toPrecision 将这个数字转换为一个十进制数形式的字符串。Math.PI.toPrecision(2);//3.1,保留两个有效数字 number.toString 将这个数字转换为一个字符串。Math.PI.toString(2);//这里的2表示进制,而不是精度

对象的方法

object.hasOwnProperty 判断对象是否包含一个以指定字符串命名的属性

正则表达式的方法

regexp.exec 如果成功匹配,会返回一个数组。下标0会返回匹配的原字符串,1~后面返回的是分组1~捕获的文本。 如果带有g标识(全局标识),那么查找不是从字符串开始的位置开始,而是从regexp.lastIndex开始。如果匹配成功,那么会设置regexp.lastIndex为匹配成功的字符串第一个字符的位置,否则重置为0。 regexp.test 如果成功匹配,返回true,否则false

字符串的方法

string.charAt 返回在字符串中指定位置处的字符 string.charCodeAt 返回在字符串中指定位置处的字符的ASCII码值 string.concat 将其它字符串连接到一起,返回一个新的合成字符串。实际上用+更方便,且更直观。 string.indexOf 在此字符串中查找指定的另外一个字符串,如果找到了,就返回第一个找到的字符串的位置,否则返回-1."asdasd".indexOf("sd",2);//值为4,2表示从第3个字符开始查找 string.lastIndexOf 这个与上面的相似,只不过是从字符串尾部开始查找 string.localeCompare 比较两个字符串。strA.localeCompare(strB);//结果也是返回正数,负数,零,你懂的 string.replace 对一个字符串进行查找并替换的操作,并返回新的字符串(以下名字标红的方法,都是可以应用正则表达式的)

常规方法

'asdasd'.replace('as','d');//结果为ddasd,replace只会替换第一次的出现位置。

正则表达式方法

加g标识匹配多次,不加匹配一次

var regExp=/ee(asd\d{0,3})/g;//加g标识匹配多次,不加匹配一次 var p='eeasd1323'.replace(regExp,'$1end');//结果为eeasd1323end //'$1end'的位置也可以放一个函数,每次匹配到会运行这个函数,然后用函数的返回值替换,这里就不举栗子了 '$1end'这个东西的解释是这样的: $$:表示$这个符号 $&: 表示$&整个匹配到的文本 $number:表示分组捕获到的文本,比如上面的$1就是捕获分组1捕捉到的文本 $`:匹配之前的文本 $':匹配之后的文本 string.match 让一个字符串和一个正则表达式匹配。它依据g标识来决定如何进行匹配。 如果没有g标识,匹配结果与regexp.exec效果一样 如果有,那么会生成一个包含所有匹配(除捕获分组之外这个括号里的搞不懂什么意思,明明就匹配了所有的)的数组 string.search 与indexof相似,只是接收一个正则表达式匹配而已。此方法忽略g标识。 string.split 将字符串分割来创建一个字符串数组。此方法忽略g标识。 一般的玩法 var digits='0123456789'; var arr=digits.split('',5);//5表示得到的数组顶多五个元素,多余的去掉 //结果为['0','1','2','3','4'] 正则表达式的玩法 var text='troy,123,good '; var d=text.split(/\s*,\s*/);//前面讲过\s表示unicode各种空字符,然后所以匹配的分隔符就是包含空字符的逗号,这样就自动去掉空字符了,好强大 //但是有特例哦,来自分组捕获的文本会被包含在分割后的字符,所以我个人建议那就别用分组捕获好了,在这里没必要 string.slice 复制字符串的一部分来构造一个新的字符串 string.substring 与slice效果一样,只是不能使用负数下标。没有任何理由使用substring而不是slice(作者说的)。其实是有的,比如字面意思上我就知道什么意思了。 string.toLowerCase 返回一个全部小写化的新字符串。 string.toLocaleLowerCase 同上,土耳其语专用,所以你就当看不见好了 string.toUpperCase 返回一个全部大写化的新字符串。 string.toLocaleUpperCase 同上,土耳其语专用,所以你就当看不见好了 String.fromCharCode 看好哦,string是大写哦。所以不是在字符串后面调用,而是用String调用。根据一串数字编码返回一个字符串。(我相信你基本上用不到的)

相关文章

事件冒泡和事件捕获 起因:今天在封装一个bind函数的时候,发现el.addEventListener函数支持第三个参数...
js小数运算会出现精度问题 js number类型 JS 数字类型只有number类型,number类型相当于其他强类型语言...
什么是跨域 跨域 : 广义的跨域包含一下内容 : 1.资源跳转(链接跳转,重定向跳转,表单提交) 2.资源...
@ "TOC" 常见对base64的认知(不完全正确) 首先对base64常见的认知,也是须知的必须有...
搞懂:MVVM模式和Vue中的MVVM模式 MVVM MVVM : 的缩写,说都能直接说出来 :模型, :视图, :视图模...
首先我们需要一个html代码的框架如下: 我们的目的是实现ul中的内容进行横向的一点一点滚动。ul中的内容...