Javascript经典实例 - 字符串
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经典实例 - 字符串的更多相关文章
- JavaScript 经典实例收集整理
跨浏览器添加事件 //跨浏览器添加事件 function addEvent(obj,type,fn){ if(obj.addEventListener){ obj.addEventListener(t ...
- javascript笔记——JavaScript经典实例
转载自百度文库 http://wenku.baidu.com/view/9a703522bcd126fff7050bfa.html 1. oncontextmenu="window.even ...
- Javascript经典实例 - 正则表达式
1] 正则常用字符 正则表达式常用的特殊字符 字符 匹配 示例 ^ 匹配输入的开始 /^This/匹配 “This is ...” $ 匹配输入的结束 /end$/匹配“This is the end ...
- JavaScript 经典实例日常收集整理(常用经典)
作者:阿讯小飞 原文来自:脚本之家 跨浏览器添加事件 //跨浏览器添加事件 function addEvent(obj,type,fn){ if(obj.addEventListener){ obj. ...
- JavaScript经典实例
1.指定范围生成随机数 function random(min, max) { if (arguments.length === 2) { return Math.floor(min + Math.r ...
- JavaScript经典实例(浏览器事件)
跨浏览器事件 1.跨浏览器添加事件 function addEvent(obj,type,fn){ if(obj.addEventListener){ obj.addEventListener(typ ...
- 经典的javascript函数实例,css的. #区别
先贴javascript经典例子代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...
- 数据可视化(5)--jqplot经典实例
本来想把实例也写到上篇博客里,最后发现太长了,拆成两篇博客了. 实例来源于官方文档:http://www.jqplot.com/tests/ 这篇博客主要是翻译了官方文档关于经典实例的解说,并在相应代 ...
- c#初学-多线程中lock用法的经典实例
本文转载自:http://www.cnblogs.com/promise-7/articles/2354077.html 一.Lock定义 lock 关键字可以用来确保代码块完成运行,而不会被 ...
随机推荐
- 浅谈Hive vs HBase
Hive是什么? Apache Hive是一个构建于Hadoop(分布式系统基础架构)顶层的数据仓库,注意这里不是数据库.Hive可以看作是用户编程接口,它本身不存储和计算数据:它依赖于HDFS(H ...
- 接入SDK
管理提醒: 本帖被 fm2010 设置为精华(2014-11-12) http://www.cocoachina.com/bbs/read.php?tid-239087.html 本帖属于Co ...
- cf D. Alternating Current
http://codeforces.com/contest/344/problem/D #include <cstdio> #include <cstring> #includ ...
- ZOJ3229 Shoot the Bullet
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=20756 思路:就讲一下有源汇上下界最大流的做法吧!对于所有的边,就按照无源汇 ...
- BZOJ 1036 [ZJOI2008]树的统计Count(动态树)
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1036 题意:一棵树,每个节点有一个权值.三种操作:(1)修改某个节点的权值:(2)输出某两 ...
- 使用片上XRAM需要进行的初始化
现在,流行的51单片机大多把on-chip expanded RAM(以下简称XRAM)作为基本配置,容量有些差别.厂商在给出芯片特性时,往往把XRAM和标准52芯片的256字节内部RAM加在一起统称 ...
- 全局函数的Result一定要每次都初始化,否则上次的结果会被保持到下一次继续使用
测试半天,原来是因为这个原因.下面例子中,Result:=''必须写,否则其结果会被累计,真是昏倒!! function MyPaths(tache: IXMLTaskType) : String; ...
- 《Programming WPF》翻译 第5章 8.我们进行到哪里了?
原文:<Programming WPF>翻译 第5章 8.我们进行到哪里了? 样式支持你定义一个策略来设置可视化元素的依赖属性.属性的设置可以被命名以及手动或者编程方式地通过名称应用,或者 ...
- linux下ifconfig, DNS以及route配置
转载:http://blog.csdn.net/wangjingfei/article/details/5283632/ 熟悉使用ifconfig 会非常方便. ifconfig eth0 新ip 然 ...
- mybatis和hibernate对比
Hibernate是一个数据库表和java对象之间完全映射的框架,java开发人员直接对java对象操作,而不对数据库表进行操作: Mybatis是对SQL语句和java对象进行映射,仍需要开发人员编 ...