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

 var city =new String("St. Louis");
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。

Javascript经典实例 - 字符串的更多相关文章

  1. JavaScript 经典实例收集整理

    跨浏览器添加事件 //跨浏览器添加事件 function addEvent(obj,type,fn){ if(obj.addEventListener){ obj.addEventListener(t ...

  2. javascript笔记——JavaScript经典实例

    转载自百度文库 http://wenku.baidu.com/view/9a703522bcd126fff7050bfa.html 1. oncontextmenu="window.even ...

  3. Javascript经典实例 - 正则表达式

    1] 正则常用字符 正则表达式常用的特殊字符 字符 匹配 示例 ^ 匹配输入的开始 /^This/匹配 “This is ...” $ 匹配输入的结束 /end$/匹配“This is the end ...

  4. JavaScript 经典实例日常收集整理(常用经典)

    作者:阿讯小飞 原文来自:脚本之家 跨浏览器添加事件 //跨浏览器添加事件 function addEvent(obj,type,fn){ if(obj.addEventListener){ obj. ...

  5. JavaScript经典实例

    1.指定范围生成随机数 function random(min, max) { if (arguments.length === 2) { return Math.floor(min + Math.r ...

  6. JavaScript经典实例(浏览器事件)

    跨浏览器事件 1.跨浏览器添加事件 function addEvent(obj,type,fn){ if(obj.addEventListener){ obj.addEventListener(typ ...

  7. 经典的javascript函数实例,css的. #区别

    先贴javascript经典例子代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...

  8. 数据可视化(5)--jqplot经典实例

    本来想把实例也写到上篇博客里,最后发现太长了,拆成两篇博客了. 实例来源于官方文档:http://www.jqplot.com/tests/ 这篇博客主要是翻译了官方文档关于经典实例的解说,并在相应代 ...

  9. c#初学-多线程中lock用法的经典实例

    本文转载自:http://www.cnblogs.com/promise-7/articles/2354077.html 一.Lock定义     lock 关键字可以用来确保代码块完成运行,而不会被 ...

随机推荐

  1. sql 字段先计算后再拿比对的字段进行比对 效率提升100倍

    关于日期索引的使用,不要计算后再对比,否则使用不了索引例如:以下执行不了索引,耗时很大 dywl=# explain analyze SELECT car_bill.billno,car_bill.b ...

  2. Ubuntu 修改 Apache2 用户组 方法

    检查/etc/apache2/envvars文件,发现其中需要使用/etc/apache2/envvars文件中的以下几个环境变量 export APACHE_RUN_USER=www-data ex ...

  3. JS判断访问设备、客户端操作系统类型

    先给出一个实例:判断windows.linux.android 复制以下代码另存为html文件即可. <html> <head> <title>判断操作系统< ...

  4. Scala学习笔记--xml

    http://blog.csdn.net/beautygao/article/details/38497065 https://github.com/scala/scala-xml http://st ...

  5. 必须弄懂的495个C语言问题

    1.1 我如何决定使用那种整数类型? 如果需要大数 值(大于32, 767 或小于¡32, 767), 使用long 型.否则, 如果空间很重要(如有大数组或很多结构), 使用short 型.除此之外 ...

  6. cf B. Color the Fence

    http://codeforces.com/contest/349/problem/B 贪心 #include <cstdio> #include <cstring> #inc ...

  7. bzoj 1912 巡逻(树直径)

    Description Input 第一行包含两个整数 n, K(1 ≤ K ≤ 2).接下来 n – 1行,每行两个整数 a, b, 表示村庄a与b之间有一条道路(1 ≤ a, b ≤ n). Ou ...

  8. c++ 05

    一.单例模式 二.成员指针 class Student { public:   string m_name;   void print (void) { ... } }; 1.指向成员变量的指针 成员 ...

  9. win环境下mysql5.6.14的所有变量的默认值

    在windows mysql5.6.14 x64版本下my.ini如下: [mysqld] port  = 3306 socket  = /tmp/mysql.sock basedir=D:/wamp ...

  10. 关于打开Eclipse时出现eclipse failed to create the java virtual machine与locking is not possible in the directory问题的解决

    今天在机子上使用Eclipse时候打开发现这两个问题,通过查阅资料膜拜大神博客得知解决方法,特此整理下来,方便后来遇到此问题的小伙伴们. 一开始打开Eclipse时候出现问题现象1,问题1解决以后就出 ...