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 相关文章推荐
qTip2 精致的基于jQuery提示信息插件
Feb 17 Javascript
JavaScript高级程序设计(第3版)学习笔记12 js正则表达式
Oct 11 Javascript
利用js 进行输入框自动匹配字符的小例子
Jun 29 Javascript
jQuery中prepend()方法使用详解
Aug 11 Javascript
jQuery图片加载显示loading效果
Nov 04 Javascript
EasyUI实现下拉框多选功能
Nov 07 Javascript
Vue下的国际化处理方法
Dec 18 Javascript
Servlet3.0与纯javascript通过Ajax交互的实例详解
Mar 18 Javascript
详解JavaScript事件循环机制
Sep 07 Javascript
vue 监听某个div垂直滚动条下拉到底部的方法
Sep 15 Javascript
转换layUI的数据表格中的日期格式方法
Sep 19 Javascript
JavaScript实现前端倒计时效果
Feb 09 Javascript
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 foreach 参数强制类型转换的问题
2010/12/10 PHP
让PHP COOKIE立即生效,不用刷新就可以使用
2011/03/09 PHP
php后台多用户权限组思路与实现程序代码分享
2012/02/13 PHP
PHP 文件编程综合案例-文件上传的实现
2013/07/03 PHP
php常用的url处理函数总结
2014/11/19 PHP
PHP自定义错误用法示例
2016/09/28 PHP
PHP中用Trait封装单例模式的实现
2019/12/18 PHP
ExtJs设置GridPanel表格文本垂直居中示例
2013/07/15 Javascript
jquery easyui 结合jsp简单展现table数据示例
2014/04/18 Javascript
如何书写高质量jQuery代码(使用jquery性能问题)
2014/06/30 Javascript
JS使用for循环遍历Table的所有单元格内容
2014/08/21 Javascript
浅谈javascript构造函数与实例化对象
2015/06/22 Javascript
AngularJS初始化静态模板详解
2016/01/14 Javascript
Angularjs 滚动加载更多数据
2016/03/17 Javascript
js 性能优化之快速响应的用户界面
2017/02/15 Javascript
JS打开摄像头并截图上传示例
2017/02/18 Javascript
微信小程序 本地数据存储实例详解
2017/04/13 Javascript
Vue.js中轻松解决v-for执行出错的三个方案
2017/06/09 Javascript
bootstrap timepicker在angular中取值并转化为时间戳
2017/06/13 Javascript
JS设计模式之状态模式概念与用法分析
2018/02/05 Javascript
动态加载、移除js/css文件的示例代码
2018/03/20 Javascript
Vue 菜单栏点击切换单个class(高亮)的方法
2018/08/22 Javascript
详解webpack打包第三方类库的正确姿势
2018/10/20 Javascript
深入理解Python 代码优化详解
2014/10/27 Python
python判断字符串是否包含子字符串的方法
2015/03/24 Python
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
深入理解Python中字典的键的使用
2015/08/19 Python
Python中datetime模块参考手册
2017/01/13 Python
Python logging管理不同级别log打印和存储实例
2018/01/19 Python
python利用Opencv实现人脸识别功能
2019/04/25 Python
python bluetooth蓝牙信息获取蓝牙设备类型的方法
2019/11/29 Python
Python偏函数Partial function使用方法实例详解
2020/06/17 Python
Django Session和Cookie分别实现记住用户登录状态操作
2020/07/02 Python
创优争先心得体会
2014/09/11 职场文书
周年庆典答谢词
2015/01/20 职场文书
学习《中小学教师职业道德规范》心得体会
2016/01/18 职场文书