• Javascript经典实例


        1] 'this is a string'这是字符串直接量,new String('this is a string')这是字符串对象,字符串对象可以用字符串对象所带的属性和方法,直接量在“表面上”也可以用,但实质是先转成了对象,做处理结束以后再丢弃对象,返回结果。如:

    1 var city =new String("St. Louis");
    2 var lcCity = city.toLowerCase();//输出st. louis

        2] 连接字符串可以通过运算符“+”,也可以通过String对象自带函数concat,如:

    var oracle = "oracle";
    oracle += " sql";//输出oracle sql
    /* 等价于 */
    var oracle = "".concat("oracle"," sql");//当然,可以添加更多的参数

        3] 字符串比较一般都是通过运算符"=="、"<"、">",还有一个String对象的方法localeCompare也可以作比较,如:

    var f1 = "apple”;
    var f2 = "grape";
    var i = f1.localeCompareCompare(f2);//返回-1
    /* 相同为0,小于为-1,大于为1(f1对比f2) */

        4] 在字符串中查找子字符串可以通过String的内置对象indexOf,返回的是子字符串的位置,如果用lastIndexOf可以从右向左计数;当然,还有其他很多方法,这只是其中的一种。索引方式举例如下:

    "this apple is my apple".lastIndexOf("apple");//返回值17
    "this apple is my apple".lastIndexOf("apple",12);//返回值5
    "this apple is my apple".lastIndexOf("apple",3);//返回值-1(没找到)

        5] 分割字符串,大家应该都知道的,substr、substring,还有就是split,用这些方法,配合indexOf就可以提取字符串了。例子就不举了。

        6] 检查非空字符串,运用typeof、valueOf以及length长度即可。typeof检测数据基本类型,valueOf是所有对象的方法,不局限于string,返回调用对象的基本值——之所以还要用它,是因为如果不确定字符串是否存在,用length会报错,而且如果字符串不是直接量,而是一个被new出来的String对象,那么typeof也会返回object类型,不过一般在我们实际应用中,出现如此不确定的东西的时候还是很少的,所以一般省略valueOf也都可以达到目的。

        7] 去除字符串末尾空白,可以用字符串对象自带的replace方法,用正则将空白都替换成"",不过ECMAScript5新增了一个trim的方法,可以自动去除空白,但是IE8不支持,可以自己封装一个,比如:

    if(typeof String.trim == "undefined"){
      String.prototype.trim = function(){
          return this.replace(/(^s)|(s*$)/g, "");
      }  
    }

        这样String对象里面如果没有trim方法,则会给String原型上添加这样一个方法,可以被使用。除此之外,还可以单独去除左边和右边的空白,trimLeft,trimRight。

  • 相关阅读:
    02 _ 该如何选择消息队列
    封装、抽象、继承、多态分别可以解决哪些编程问题?
    04 _ 理论一:当谈论面向对象的时候,我们到底在谈论什么?
    03 _ 面向对象、设计原则、设计模式、编程规范、重构,这五者有何关系?
    接口使用
    结构体和方法
    通道的高级玩法
    通道的基本操作
    极客时间 mp3提取
    iOS多线程中的单例
  • 原文地址:https://www.cnblogs.com/mel-walle/p/4772246.html
Copyright © 2020-2023  润新知