JavaScript基础知识之方法汇总结


Posted in Javascript onJanuary 24, 2016

数组的方法:

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,'asd','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调用。根据一串数字编码返回一个字符串。(我相信你基本上用不到的)

Javascript 相关文章推荐
js 动态文字滚动的例子
Jan 17 Javascript
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
May 14 Javascript
node.js中的querystring.unescape方法使用说明
Dec 10 Javascript
jQuery实现滚动切换的tab选项卡效果代码
Aug 26 Javascript
js控制TR的显示隐藏
Mar 04 Javascript
关于webpack代码拆分的解析
Jul 20 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
Jul 21 Javascript
SpringMVC简单整合Angular2的示例
Jul 31 Javascript
vue-router相关基础知识及工作原理
Mar 16 Javascript
实用Javascript调试技巧分享(小结)
Jun 18 Javascript
vue跳转方式(打开新页面)及传参操作示例
Jan 26 Javascript
jQuery实现移动端图片上传预览组件的方法分析
May 01 jQuery
Javascript实现单例模式
Jan 24 #Javascript
原生JavaScript实现滚动条效果
Mar 24 #Javascript
AngularJS中如何使用$http对MongoLab数据表进行增删改查
Jan 23 #Javascript
jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用
Jan 23 #Javascript
jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
Jan 23 #Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
Jan 23 #Javascript
AngularJS中监视Scope变量以及外部调用Scope方法
Jan 23 #Javascript
You might like
PHP 缓存实现代码及详细注释
2010/05/16 PHP
基于php设计模式中工厂模式详细介绍
2013/05/15 PHP
深入PHP内存相关的功能特性详解
2013/06/08 PHP
PHP从二维数组得到N层分类树的实现代码
2016/10/11 PHP
jQuery的一些注意
2006/12/06 Javascript
通过继承IHttpHandle实现JS插件的组织与管理
2010/07/13 Javascript
JS中的substring和substr函数的区别说明
2013/05/07 Javascript
JS数组(Array)处理函数整理
2014/12/07 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
AngularJS辅助库browserTrigger用法示例
2016/11/03 Javascript
JS实现上传图片的三种方法并实现预览图片功能
2017/07/14 Javascript
JavaScript与Java正则表达式写法的区别介绍
2017/08/15 Javascript
JS中Attr的用法详解
2017/10/09 Javascript
AngularJS 表单验证手机号的实例(非必填)
2017/11/12 Javascript
angularjs 缓存的使用详解
2018/03/19 Javascript
Node.js如何对SQLite的async/await封装详解
2019/02/14 Javascript
Vue-axios-post数据后端接不到问题解决
2020/01/09 Javascript
vue数据响应式原理知识点总结
2020/02/16 Javascript
Python的Django框架中TEMPLATES项的设置教程
2015/05/29 Python
Python基于sftp及rsa密匙实现远程拷贝文件的方法
2016/09/21 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
Python random模块用法解析及简单示例
2017/12/18 Python
python基础教程项目四之新闻聚合
2018/04/02 Python
对python 自定义协议的方法详解
2019/02/13 Python
详解PyTorch手写数字识别(MNIST数据集)
2019/08/16 Python
Python 字符串、列表、元组的截取与切片操作示例
2019/09/17 Python
python时间日期操作方法实例小结
2020/02/06 Python
在keras中实现查看其训练loss值
2020/06/16 Python
基于Python和C++实现删除链表的节点
2020/07/06 Python
Python使用urlretrieve实现直接远程下载图片的示例代码
2020/08/17 Python
matplotlib常见函数之plt.rcParams、matshow的使用(坐标轴设置)
2021/01/05 Python
linux下进程间通信的方式
2014/12/23 面试题
《莫泊桑拜师》教学反思
2014/04/23 职场文书
歌颂祖国演讲稿
2014/05/04 职场文书
学校安全管理责任书
2014/07/23 职场文书
Nginx安装配置详解
2022/06/25 Servers