• js中object、字符串与正则表达式的方法


    对象

    1.object.hasOwnProperty(name)

    检测object是否包含一个名为name的属性,那么hasOwnProperty方法返回true,但是不包括其原型上的属性。

    正则表达式

    2.regexp.exec(string)

    exec方法是正则表达式最强大和最慢的方法。如果成功的匹配regexp和字符串,他会返回一个数组。数组中下标为0的元素将会包含正则表达式regexp匹配的子字符串。下标为1的元素是分组1捕获的文本,下标为2的元素是分组2捕获的文本。如果匹配失败,会返回null。

    如果regexp带有一个g标志。查找不是从这个字符串的其实位置开始,而是从regexp.lastIndex(初始值为0)位置开始。如果匹配成功,那么regexp.lastIndex将被设置为该匹配后第一个字符的位置。不成功的匹配会重置regexp.lastIndex为0。

    3.regexp.test(string)

    是使用正则表达式的最简单和最快的方法。如果该regexp匹配string,返回true,否则返回false。不要对这样方法使用g标识。

    字符串

    4.string.chatAt(pos)

    返回:在string中pos处的字符串。如果pos小于0或者大于等于字符串长度string.length,他会返回空字符串。

    例如:

    1 var foo=function(){
    2           var str="",str1="abc",c=undefined,d=null;
    3           console.log(str.charAt(0));//没有输出结果
    4           console.log(str1.charAt(1));//b
    5           console.log(c.charAt(1));//报错
    6           console.log(d.charAt(1));//报错
    7 
    8        };
    9 foo();

     charAt()可以这样实现

    String.method("charAt",function(pos){

           return this.slice(pos,pos+1);

    });

    5.string.charCodeAt(pos)

    返回:以整数形式标识的string中pos位置的字符的字符编码。如果pos小于0或者大于等于字符串长度string.length,他会返回NaN。

    6.string.cancat(string……)

    返回:返回连接在一起的新的字符串,但是用+更加方便。

    例如:

    var s="c".cancat("a","n");

    7.string.indexOf(searchString,position)

    返回:在string内部查找searchString。

    如果找到,返回第一个匹配字符的位置,否则返回-1.可选参数position可指从某个指定的位置开始查找:

     1 var foo=function(){
     2           var str="",str1="abcabc",c=undefined,d=null;
     3           console.log(str.indexOf("a",0));//-1
     4           console.log(str1.indexOf("a",0));//0
     5           console.log(str1.indexOf("a",1));//3
     6           console.log(c.indexOf("a",0));//报错
     7           console.log(d.indexOf("a",0));//报错
     8 
     9        };
    10        foo();

    8.string.lastIndexOf(searchString,position)

    返回:searchString的从string末尾开始查找的位置。

    例如:

    1 var text = 'Mississippi';
    2 var p = text.lastIndexOf('ss');    // p is 5
    3 p = text.lastIndexOf('ss', 3);     // p is 2
    4 p = text.lastIndexOf('ss', 6);     // p is 5

    9.string.localeCompare(that)

    返回:比较两个字符串。如何比较没有特别的说明,如果string比字符串that小,那么结果为负数。如果他们是相等的,结果为0.

    10.string.match(regexp)

    返回:让字符串与正则表达式匹配。依据g标识决定如何进行匹配。如果没有g标识,那么调用string.match(regexp)的结果与调用regexp.exec(string)结果相同。然而,如果regexp带有g标识符,他将生成一个包含所有匹配(除捕获分组之外)的数组:

    11.string.replace(searchValue,replaceValue)

    返回:对string进行查找和替换操作,并返回一个新的字符串。参数searchValue可以是一个字符串或一个正则表达式对象。如果是一个字符串,那么searchValue只会在第一次出现的地方被替换。例如:

     var result = "mother_in_law".replace('_', '-'); ,如果searchValue是一个正则表达式并且带有g标志,他会替换所有的匹配,如果没有带g标识,它会仅替换第1个匹配。例如:

    1 var oldareacode = /((d{3}))/g;
    2 var p = '(555)666-1212'.replace(oldareacode, '$1-');
    3 // p is '555-555-1212'

    replaceValue可以是一个字符串或一个函数。如果replaceValue是一个函数,那么每遇到一次匹配函数就会被调用一次,而该函数返回的字符串会被用作替换文本。传递给这个函数的第一个参数是整个被匹配的文本,第2个参数是分组1捕获的文本,再下一个参数是分组2捕获的文本,依次类推。

    12.string.slice(start,end)

    返回:复制string中的一部分来构造一个新的字符串。

    如果start参数是负数,它将与string.length相加。

    end参数是可选的,且默认值是string.length。如果end参数是负数,那么它将与string.length相加。end参数等于你要取得最后一个字符位置加1。

    想要从位置p开始的n个字符,就用string.slice(p,p+n);

    例如:

    1 var text = 'and in it he says "Any damn fool could';
    2 var a = text.slice(18);
    3 // a is '"Any damn fool could'
    4 var b = text.slice(0, 3);
    5 // b is 'and'
    6 var c = text.slice(−5);
    7 // c is 'could'
    8 var d = text.slice(19, 32);
    9 // d is 'Any damn fool'

    13.string.split(separator,limit)

    返回:将string分割成片段来创建的一个字符串数组。可选参数limit可以限制被分割的片段数量。separator参数可以是一个字符串或一个正则表达式。

    如果separator是一个空白字符,会返回一个单字符数组,例如:

    1 var digits = '0123456789';
    2 var a = digits.split('', 5);
    3 // a is ['0', '1', '2', '3', '456789']

    否则,会查找所有separator出现的地方。分隔符两边的每个单元文本都会被复制到该数组中。此方法会忽略g标识符。

    来自捕获组的文本会白包含在分割后的数组中:

    1 var text = 'last,  first ,middle';
    2 var e = text.split(/s*(,)s*/);
    3 // e is [
    4 //    'last',
    5 //    ',',
    6 //    'first',
    7 //    ',',
    8 //    'middle'
    9 // ]

    14.string.search(regexp)

    与indexOf相似,接收一个正则表达式对象作为参数而不是一个字符串。如果找到匹配,它返回第1个匹配的首字符的位置,如果没有找到匹配,则返回-1。此方法会忽略g标志,且没有position参数:

    1 var text = 'and in it he says "Any damn fool could';
    2 var pos = text.search(/["']/);    // pos is 18

    15.string.substring(start,end)

    与slice一样,但是不能处理负参数。

    16.string.toLocaleLowerCase()

    返回一个新的字符串,使用本地化规则把这个string中的所有的字母转换为小写格式。

    17.string.LocaleUpperCase()

    返回一个新字符串,使用本地化规则把这个string中的所有的字母转换为大写格式。

    18.string.toLowerCase()

    返回一个新的字符串,string中的所有字母都被转化为小写格式

    19.string.toUpperCase()

    返回一个新的字符串,string中的所有字母都被转化为大写格式

    20.string.fromCharCode(char……)

    根据一串数字编码返回一个字符串

    var a = String.fromCharCode(67, 97, 116);
    // a is 'Cat'

  • 相关阅读:
    无废话MVC入门教程五[Control与View交互]
    无废话MVC入门教程三[路由设置及视图入门]
    无废话MVC入门教程二[第一个小Demo]
    IDEA 插件开发
    慢慢学Linux驱动开发,第十章,GNU C的扩展
    《UNIX环境高级编程》编译问题彻底解决方案
    GNU make笔记
    outlook2003无法显示地址列表 无法打开与该地址列表的相关"联系人"文件夹解决方案
    慢慢学Linux驱动开发,第十二章,加入内核
    ADS: (Fatal)L6002U:Could not open file:..... & L6002
  • 原文地址:https://www.cnblogs.com/yangxiaoguai132/p/5268731.html
Copyright © 2020-2023  润新知