JavaScript中String、Array、Math、Number、Math属性和方法汇总

String

属性

constructor:对创建该对象的函数的引用

length:字符串的长度

prototype:允许向对象添加属性和方法

方法

1.字符方法(前两个都接收一个参数,即基于 0 的字符位置):

charAt():返回在指定位置的字符。

charCodeAt():返回在指定的位置的字符的 Unicode 编码。字母.charCodeAt():返回字母的ASCII码。

fromCharCode():将 Unicode 编码转为字符。将数字转化为字母:String.fromCharCode(num);

 

2.字符串方法(均不改变原字符串):

concat():连接两个或更多字符串,不修改原字符串,并返回新的字符串。(更推荐使用“+”加号操作符)

slice() :提取字符串的某个部分,返回被提取的部分。stringObject.slice(start【,end】),不含end

substr() :在字符串中抽取从start下标开始的指定数目的字符。stringObject.substr(start,length)

substring() :提取字符串中介于两个指定下标之间的字符。stringObject.substring(start,stop)

trim():创建一个字符串的副本,删除前置及后缀的所有空格,然后返回结果

 

3.字符串位置方法:

indexOf() :返回某个指定的字符串值在字符串中首次出现的位置。stringObject.indexOf(searchvalue【,fromindex】)。

lastIndexOf() :返回某个指定的字符串值在字符串中最后一次出现的位置。

 

4.大小写转换方法(针对地区和不针对地区):

toLowerCase() 和 toLocaleLowerCase():把字符串转换为小写

toUpperCase() 和 toLocaleUpperCase():把字符串转换为大写

 

5.字符串的模式匹配方法:

match():接受一个参数,正则表达式或RegExp 对象,返回一个数组(类似exec)。

search():接受参数与match同,返回字符串中第一个匹配项的索引,没有返回-1。

replace():接受两个参数:第 一个参数可以是一个 RegExp 对象或者一个字符串(这个字符串不会被转换成正则表达式),第二个参数可以是一个字符串(替换文本)或者一个函数。

split():把一个字符串分割成字符串数组。stringObject.split(separator【,howmany】)。howmany可选,指定返回的数组的最大长度。

 

6.localeCompare():比较两个字符串。 如果字符串在字母表中应该排在前面,返回一个负数。等于返回0,之后返回正数。大写排在小写前面。

 

Array

属性

constructor:返回创建数组对象的原型函数。

length:设置或返回数组元素的个数。

prototype:允许向数组对象添加属性或方法。

方法

1.检测数组

instanceof 操作符:value instanceof Array。它假定只有一个全局执行环境。如果网页中包含多个框架,那实际上就存在两个以上不同的全局执行环境,从而存在两个以上不同版本的 Array 构造函数。

Array.isArray(value):ECMAScript 5新增这个方法的目的是终确定某 个值到底是不是数组,而不管它是在哪个全局执行环境中创建的。

 

2.转换方法(如果数组中的某一项的值是 null 或者 undefined,在返回的结果中以空字符串表示。)

toString() :返回由数组中每个值的字符串形式拼接而成的一个以逗号分隔的字符串。

valueOf():返回数组对象的原始值。实际上,为了创建这个字符串会调用数组每一项的 toString()方法。

join()方法:arrayObject.join(separator);separator可选。返回一个字符串,指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。

 

3.栈方法 (直接修改原数组)

push() 方法:可向数组的末尾添加一个或多个元素,并返回新的长度。

pop() 方法:用于删除并返回数组的最后一个元素。

 

4.队列方法(直接修改原数组)

shift() 方法:用于把数组的第一个元素从其中删除,并返回第一个元素的值。

unshift() 方法:可向数组的开头添加一个或更多元素,并返回新的长度。

 

5.重排序方法(直接修改原数组)

reverse() 方法:用于颠倒数组中元素的顺序

sort()方法:调用每个数组项的 toString()转型方法,然后比较得到的字符串,以确定如何排序。

语法:arrayObject.sort(sortby) sortby可选。规定排序顺序。必须是函数。

  • 若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。function(a,b){ return a - b; //正序排列}

  • 若返回值>-1 && <1,则表示 A 和 B 具有相同的排序顺序。

  • 若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。function(a,b){ return b - a; //逆序排列}

 

6.操作方法

concat() 方法:用于连接两个或多个数组。不会改变现有的数组,返回被连接数组的一个副本。

slice() 方法:从已有的数组中返回选定的元素。slice(startIdx,endIdx);返回数组不包含end。不会修改数组。 

splice() 方法:向/从数组中添加/删除项目,返回被删除的项目。改变原始数组。splice(index,howmany,item1,.....,itemX)

 

7.位置方法(都接收两个参数:要查找的项和(可选)表示查找起点位置的索引)

indexOf() 和 lastIndexOf():返回要查找的项在数组中的位置,在没找到的情况下返回-1,查找的项必须严格相等

 

8.迭代方法(不会修改数组中的包含的值)

every():对数组中的每一项运行给定函数,如果该函数对每一项都返回 true,则返回 true;

some():对数组中的每一项运行给定函数,如果该函数对任一项返回 true,则返回 true;

filter():对数组中的每一项运行给定函数,返回该函数会返回 true 的项组成的数组;

map():对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组;

forEach():对数组中的每一项运行给定函数。这个方法没有返回值。

 

9.归并方法 (迭代数组的所有项,然后构建一个终返回的值)

reduce()和 reduceRight():reduce()从前往后,reduceRight()从后往前。

这两个方法都接收两个参数:一个在每一项上调用的函数和(可选的)作为归并基础的初始值。

传给 reduce()和 reduceRight()的函数接收 4 个参数:前一个值、当前值、项的索引和数组对象。这个函数返回的任何值都会作为第一个参数自动传给下一项。第一次迭代发生在数组的第二项上,因此第 一个参数是数组的第一项,第二个参数就是数组的第二项。

function add(arr){
    return arr.reduce(function(ele1,ele2){
        return ele1 + ele2;
    });
}
var array = [1,2,3,4,5];
console.log(add(array));// 15

 

Number

属性

constructor返回对创建此对象的 Number 函数的引用。

MAX_VALUE:可表示的最大的数。

MIN_VALUE:可表示的最小的数。

NEGATIVE_INFINITY:负无穷大,溢出时返回该值。

POSITIVE_INFINITY:正无穷大,溢出时返回该值。

NaN非数字值。

prototype:允许向对象添加属性和方法。

方法

toFixed(x):把数字转换为字符串,x指定小数位数。

toString(x):传递一个表示基数的参数,告诉它返回几进制数值的字符串形式。

valueOf():返回一个 Number 对象的基本数字值。

toPrecision(x):把数字格式化为指定的长度。

toExponential(x):把对象的值转换为指数计数法。

 

Math(列举一些常用的吧)

属性

E:算术常量 e,即自然对数的底数(约等于2.718)。

PI:圆周率(约等于3.1415)。

方法

Math.min()和Math.max():用于确定一组数值中的小值和大值并返回

Math.random():返回大于等于 0小于 1的一个随机数。

Math.abs(num): 返回num 的绝对值

Math.sqrt(num): 返回num 的平方根

Math.pow(x,y):返回 x 的 y 次幂的值

将小数值舍入为整数:

Math.ceil():向上舍入

Math.floor():向下舍入

Math.round():标准舍入

 

posted @ 2018-09-07 13:17  叶子叶子耶  阅读(735)  评论(0编辑  收藏  举报