js 内置对象常用方法
1 内容概述
js包含一些内置对象,如Array,Function,String等,这些是基本的,常用的js类,所以了解它们十分重要;把他们的方法,用例子和文字简要的记录下来,方便今后参看。
2 Array
2.1 array.concat(item…)
返回一个新数组;
新数组的内容包括:1. array自己的浅拷贝;2. item項,注意,若item是数组,则把这个数组的各项浅拷贝后,添加到新数组中。
2.2 array.join(separator)
返回array的字符串表示,表达格式是array的内容通过separator连接成的字符串。默认separator是‘,’。
2.3 array.pop()
移除数组的最后一个元素,并将这个元素作为返回值。array为空时,返回undefined。
2.4 array.push(item…)
将item添加到array的尾部,返回array的新长度值。
注意,若item是数组,则把它作为array的一项直接加入,这和concat的处理方式不同.
与concat的区别:1. push()修改array,而concat()生成新数组;2. 对于item是数组的情况,处理方式不同。
2.5 array.reverse()
倒置array的内容,并返回array。
2.6 array.shift()
移除array的第一个項,返回被删除的这个項。array为空时,返回undefined。
2.7 array.unshift(item…)
与push()类似, 将item们插入array头部, 返回array的新长度.
2.8 array.slice(start, end)
浅复制array的内容, 复制范围[array[start], array[end]), 返回一个新数组。
说明: 1. end是可选的, 默认是array.length; 2.start和end负数时, 处理方式是把start,end与array.length相加; 3.start>=array.length时, 返回空数组. 例如,
var a = [1, 2, 3];
var b = a.slice(1, 2); // b is [2]
2.9 array.sort(compareFunction)
将数组根据比较函数定义的规则重新排序后,返回array. 默认是将array的内容按照字符串的形式比较, 所以通常需要自定义比较函数; 比较函数的一般形式是function (a, b) {…}, 若a<=b时则a在b之前, a>b时则a在b之后.
2.10 array.splice(start, deleteCount, newItem…)
把array从start位置开始, 删除deleteCount个項, 并将newItem加入到start位置; 最后返回一个数组, 包含被删除的元素.newItem是可选参数. 例如,
var a = ['a', 'b', 'c'];
var b = a.splice(1, 1, 'd');
// a is ['a', 'd', 'c'], b is ['b']
3 Number
3.1 number.toExponential(fractionDigits)
将数字转换为指数表示形式字符串,fractionDigits指定指数的小数位的位数, 取值区间[0,20].
3.2 number.toFixed(fractionDigits)
将数字表示成10进制字符串, fractionDigits同上.
3.3 number.toPrecision(precision)
与toFixed()类同, 只是precision指定的是数字的有效位数, 取值范围[0,21].
3.4 number.toString(radix)
将number转换为需要的进制字符串形式,radix默认是10.
4 RegExp
4.1 regexp.exec(String)
匹配成功, 返回数组,数组第一个項是匹配的整个字符串, 此后項是匹配分组,最后是匹配信息如配置位置,输入的字符串;若找不到匹配, 返回null.
lastIndex属性: 当regexp带有'g'全局标识时, regexp对象维护一个lastIndex属性,每次exec()从lastIndex开始查找;
这个值在exec每次成功执行后, 取值配置成功字符串的后一个字符开始位置.在配置失败后, lastIndex被设置为0.
使用注意的地方, 就在于若在配置成功又不再执行exec时, 需要手动将lastIndex设置为0.
常规使用模式,
var text = 'string';
var regexp = /regexp/g;;
var array;
while (array = regexp.exec(string)) {
..... //todo something
}
4.2 regexp.test(String)
regexp配置string, 则返回true, 否则返回false.
test()时, 不应使用g, 性能优于exec().
5 String
5.1 string.charAt(pos)
返回pos位置上的字符串(js没有char类型). 若pos<0或>=string.length, 则返回空字符串.
5.2 string.charCodeAt(pos)
与charAt()的区别在于返回位置上字符串对应的字符编码值(unicode), 若pos不在合法范围内, 就返回NaN. 示例,
var s = '戴忠';
var i;
for (i = 0; i < s.length; i++) {
console.log(i + ' ' + s.charAt(i) + ' ' + s.charCodeAt(i)); // 0 戴 25140 1 忠 24544
}
5.3 string.concat(string…)
将字符串连接在一起并返回.
5.4 string.indexOf(searchString, pos)
从string的pos开始向后查找searchString, 若找到则返回searchString出现的初始位置,否则返回-1.
5.5 string.lastIndexOf(searchString, pos)
它与indexOf(searchString, pos)的区别在于查找方向相反, 从pos位置开始向前查找.
5.6 str1.localeCompare(str2)
比较两个字符串, 若str1<str2则返回负数, 若相等则返回0, 否则正数.
5.7 string.match(regexp)
若regexp带'g', 则返回包含匹配内容的数组(不包含分组).没有'g'时, 则和regexp.exec(string)返回相同的结果. 例如,
var s1 = '1a2b';
var reg1 = /\d+/;
var reg2 = /[^\d]+/g;
var reg3 = /(\d)+/;
console.log(reg1.exec(s1)); // [ '1', index: 0, input: '1a2b' ]
console.log(s1.match(reg1)); // [ '1', index: 0, input: '1a2b' ]
console.log(s1.match(reg3)); // [ '1', '1', index: 0, input: '1a2b' ]
console.log(s1.match(reg2)); // [ 'a', 'b' ]
5.8 string.replace(searchValue, replaceValue)
将string中匹配searchValue的内容, 用repalceValue取代, 最后返回生成的新字符串.一般只替换第一次配置的内容, 在包含'g'时, 全部替换. 参数说明:
- searchValue是字符串, 或者是正则表达式;
- repalceValue可包含一些特殊含义的内容, 如
特殊字符 | 替换值 |
---|---|
$$ | $ |
$& | 整个匹配的文本 |
$number | 分组捕获的文本 |
$` | 匹配之前的文本 |
$' | 匹配之后的文本 |
3.replaceValue可以是函数, 在匹配时依次传入, 匹配的整个文本, 第一个捕获分组, 第二个捕获分组, 依次其他分组. 这个函数的返回值作为实际的取代值.
5.9 string.search(regexp)
与indexOf()功能类似, 返回值情况相同. 这个方法忽略'g'.
5.10 string.slice(start, end)
复制string的内容, 范围[start, end), 不包含end位置的内容. 这个函数的参数取值情况和array.slice()参数取值情况差不多.
5.11 string.split(separator, limit)
将string根据separator的要求分隔内容, 返回形成的数组.limit参数是可选的, 表示分隔的最大个数.separator是一个字符串或者正则表达式.这个方法忽略'g'.
5.12 string.toLowerCase()
返回小写的新字符串.
5.13 string.toUpperCase()
返回大写的新字符串.
5.14 String.fromCharCode(code…)
参数是一些数值, 把这些数值作为字符的编码值对待, 返回一个字符串. 这个方法和charCodeAt()相反.
var str = String.fromCharCode(25140, 24544);
console.log(str)
js 内置对象常用方法的更多相关文章
- js内置对象常用方法
JS内置对象: ● String对象:处理所有的字符串操作 ● Math对象:处理所有的数学运算 ● Date对象:处理日期和时间的存储.转化和表达 ● Array对象:提供一个数组的模型.存储大量有 ...
- js课程 2-8 js内置对象有哪些
js课程 2-8 js内置对象有哪些 一.总结 一句话总结:JS中内置了17个对象,常用的是Array对象.Date对象.正则表达式对象.string对象.Global对象. 1.js常用对象有哪些? ...
- web前端学习(四)JavaScript学习笔记部分(6)-- js内置对象
1.JS内置对象-什么是对象 1.1.什么是对象: JavaScript中的所有事物都是对象:字符串.数值.数组.函数 每个对象带有属性和方法 JavaScript允许自定义对象 1.2.自定义对象: ...
- 4月5日--课堂笔记--JS内置对象
JavaScript 4.5 一. JS内置对象 1.数组Array a)创建语法1:var arr=new Array(参数); i. 没有参数:创建一个初始容量为0的数组 ii. ...
- JS内置对象有哪些?
JS内置对象分为数据封装类对象和其他对象 数据封装类对象:String,Boolean,Number,Array,和Object; 其他对象:Function,Arguments,Math,Date, ...
- JS内置对象-String对象、Date日期对象、Array数组对象、Math对象
一.JavaScript中的所有事物都是对象:字符串.数组.数值.函数... 1.每个对象带有属性和方法 JavaScript允许自定义对象 2.自定义对象 a.定义并创建对象实例 b.使用函数来定义 ...
- 5月15日上课笔记-js中 location对象的属性、document对象、js内置对象、Date事件对象、
location的属性: host: 返回当前主机名和端口号 定时函数: setTimeout( ) setInterval() 二.document对象 getElementById(); 根据ID ...
- JS内置对象的原型不能重定义?只能动态添加属性或方法?
昨天马上就快下班了,坐在我对面的同事突然问我一个问题,我说“爱过”,哈哈,开个玩笑.情况是这样的,他发现JS的内置对象的原型好像不能通过字面量对象的形式进行覆盖, 只能动态的为内置对象的原型添加属性或 ...
- js课程 3-9 js内置对象定时器和超时器怎么使用
js课程 3-9 js内置对象定时器和超时器怎么使用 一.总结 一句话总结:定时器: 1.定义 sobj=setInterval(func,1000); 2.清除 cl ...
随机推荐
- UTC 转本地时间
String dateStr = "Wed Dec 10 00:00:00 UTC 0800 2014"; //Wed Dec 10 00:00:00 UTC 0800 2014 ...
- 超链接的禁用属性Disabled了解
可以设置超链接的Disabled属性的true 和 false来确定超链接是不是能点击 例如: <a herf='http://www.baidu.com' onclick='return cl ...
- 【Python】Django CSRF问题
参考资料: Django Ajax CSRF 认证:http://www.ziqiangxuetang.com/django/django-csrf.html Python Post遇到csrftok ...
- [Angular-Scaled web] 4. Using ui-router's named views
In the previous post, we use $stateProvider deriect to root url and using MainCtrl, categories.tmpl. ...
- PHP快速入门 如何配置Apache服务器
点击安装Apache,一直下一步 填写域名(Network Domain),服务器名(Server Name),和管理员邮箱(三条都可以任意填写) 下一步的时候选择(Custom),然后在Apache ...
- itext处理pdf
http://www.java2s.com/Tutorial/Java/0419__PDF/DecryptPdffile.htm
- ScriptableObject 对象化的运用
http://www.cnblogs.com/oldman/articles/2409554.html using UnityEngine; using UnityEditor; using Syst ...
- 算法笔记_019:背包问题(Java)
目录 1 问题描述 2 解决方案 2.1 蛮力法 2.2 减治法 2.2.1 递归求解 2.2.2 非递归求解(运用异或运算) 2.3 动态规划法 1 问题描述 给定n个重量为w1,w2,w3,... ...
- Laravel 教程 - Web 开发实战入门 ( Laravel 5.5 )购买链接
Laravel 教程 - Web 开发实战入门 ( Laravel 5.5 )购买链接: 推荐给你高品质的实战课程 https://laravel-china.org/courses?rf=158 ...
- Windows Store GIF player 诞生记
在Win8上面,Image source切换的时候有bug.当我们短时间定时切换的时候,Image不能正常地显示对应的图片.Image控件又不支持GIF播放,所以GIF图片的播放就是一个非常头痛的问题 ...