Javascript初级 JavaScript进阶

String对象方法



search


语法:


str.search(regexp)


参数:


regexp一个正则表达式对象。如果传入一个非正则表达式对象,则会使用new RexExp(obj)隐式地将其转换为正则表达式


描述:


如果匹配成功,则 search() 返回正则表达式在字符串中首次匹配项的索引。否则,返回 -1


注意:


当你想要知道字符串中是否存在某个模式(pattern)时可使用 search,类似于正则表达式的 test 方法

当要了解更多匹配信息时,可使用 match(会更慢),该方法类似于正则表达式的 exec 方法。



match


语法:


str.match(regexp)


参数:


regexp一个正则表达式对象。如果传入一个非正则表达式对象,则会隐式地使用 new RegExp(obj) 将其转换为正则表达式对象


描述:


当字符串匹配到正则表达式(regular expression)时,match() 方法会提取匹配项,如果找到返回匹配结果的数组,如果没有匹配项,则返回null


注意:


如果正则表达式没有 g 标志,返回和 RegExp.exec(str) 相同的结果

而且返回的数组拥有一个额外的 input 属性,该属性包含原始字符串

还拥有一个 index 属性,该属性表示匹配结果在原字符串中的索引(以0开始)

如果正则表达式包含 g 标志,则该方法返回一个包含所有匹配结果的数组。如果没有匹配到,则返回 null。



replace


语法:


str.replace(regexp|substr, newSubStr|function)


参数:


regexp,一个RegExp对象。该正则所匹配的内容会被第二个参数的返回值替换掉

substr,一个要被 newSubStr 替换的字符串

newSubStr,替换掉第一个参数在原字符串中的匹配部分。该字符串中可以内插一些特殊的变量名。

function,一个用来创建新子字符串的函数,该函数的返回值将替换掉第一个参数匹配到的结果。


描述:


replace() 方法使用一个替换值(replacement)替换掉一个匹配模式(pattern)在原字符串中某些或所有的匹配项,并返回替换后的字符串。这个替换模式可以是字符串或者 RegExp(正则表达式),替换值可以是一个字符串或者一个函数


注意:


该方法并不改变调用它的字符串本身,而只是返回替换后的字符串

在进行全局的搜索替换时,第一个参数要么是包含g标志的正则表达式,要么是包含g标志的字符串。



split


语法:


str.split([separator][, limit])


参数:


separator,指定用来分割字符串的字符(串)。separator 可以是一个字符串或正则表达式。 如果忽略 separator,则返回的数组包含一个由原字符串组成的元素。如果 separator 是一个空字符串,则 str 将会转换成一个由原字符串中字符组成的数组。

limit,一个整数,限定返回的分割片段数量。split 方法仍然分割每一个匹配的 separator,但是返回的数组只会截取最多 limit 个元素。


描述:


split() 方法通过把字符串分割成子字符串来把一个 String 对象分割成一个字符串数组。


注意:


当找到一个 seperator 时,separator 会从字符串中被移除,返回存进一个数组当中的子字符串。如果忽略 separator 参数,则返回的数组包含一个元素,该元素是原字符串。如果 separator 是一个空字符串,则 str 将被转换为由字符串中字符组成的一个数组。

如果 separator 是一个正则表达式,且包含捕获括号(capturing parentheses),则每次匹配到 separator 时,捕获括号匹配的结果将会插入到返回的数组中



Error对象


定义


创建一个error对象。当发生运行时异常时,其实例会被抛出.Error对象可作为用户自定义异常的基对象.下面是关于标准内置error类型的说明.


语法:


new Error([message[, fileName[,lineNumber]]])


参数:


message可阅读的错误描述信息

filename创建Error对象的fileName属性的值。默认是包含异常代码的文件名

lineNumber创建Error对象的lineNumber属性的值。默认是构造Error对象的行数


描述:


当代码运行时的发生错误,会创建新的Error对象,并将其抛出



Error类型


EvalError

创建一个error实例,表示错误的原因:与 eval() 有关

InternalError

创建一个代表Javascript引擎内部错误的异常抛出的实例. 如: "递归太多".

RangeError

创建一个error实例,表示错误的原因:数值变量或参数超出其有效范围。

ReferenceError

创建一个error实例,表示错误的原因:无效引用

SyntaxError

创建一个error实例,表示错误的原因:eval()在解析代码的过程中发生的语法错误

TypeError

创建一个error实例,表示错误的原因:变量或参数不属于有效类型

URIError

创建一个error实例,表示错误的原因:给 encodeURI()或  decodeURl()传递的参数无效



自定义对象


通过var obj={}

对象字面量(object literal)法

通过var obj=new Object()创建

通过构造函数创建对象

function Person(){}

var Person=function(){}

构造器属性(constructor property)

当我们创建对象的时候,实际上同时也赋予了该对象一种特殊的属性,就是构造器属性

这个构造器属性实际上是一个指向用于创建该对象的构造器函数的引用

通过instanceof 操作符可以检测一个对象是否由某个指定的构造器函数创建的


注意:


使用的时候通过new操作符得到对象

var person1=new Person()

用构造器创建对象的时候可以接收参数

构造器函数的首字母最好大写,区别其他的一般函数

通过Object.create创建对象

 

 

【本文由麦子学院独家原创,转载请注明出处并保留原文链接】

logo
© 2012-2016 www.maiziedu.com
蜀ICP备13014270号-4 Version 5.0.0 release20160127

麦子大聚惠,豪华礼包你领了吗?

客服热线 400-862-8862

回到顶部