javascript字符串笔记

<script type="text/javascript">

var str="abcdefbc? 11 , 123 ff,6";
var str2=new String("ghl");

console.log("typeof:"+typeof str); // typeof String
console.log("typeof:"+typeof str2); //typeof Object 包装类

//一、获取类
console.log("charAt:"+str.charAt(5)); // 返回指定位置的字符,下标从0开始 f
console.log("charCodeAt:"+str.charCodeAt(0)) //返回指定字符的编码 97
console.log("fromCharCode:"+String.fromCharCode(97)) //编码转换成字符 a

//二、查找类
console.log("indexOf:"+str.indexOf("cba")); //返回字符串中一个子串第一处出现的索引(从左到右搜索)。如果没有匹配项,返回-1 ;-1
console.log("indexOf:"+str.indexOf("c"));//2 返回字符串中匹配的索引值
console.log("lastIndexOf:"+str.lastIndexOf("c"));//返回字符串中一个子串"最后一处"出现的索引(从右到左搜索),如果没有匹配项,返回 -1,有返回实际索引 。7
console.log("search:"+str.search("bc"));//执行一个正则表达式匹配查找。如果查找成功,返回字符串中匹配的索引值。否则返回 -1 。1

/*indexOf和search的区别:search可以匹配正则表达式,search("?"),search不可以查找?+等量词,如需只能用正则:search(/\?/)*/
console.log("search:"+str.search(/\?/));//8
console.log("match:"+str.match(/\d+/g));//11,123,6  //match 检查一个字符串匹配一个正则表达式内容,如果么没有匹配返回 null。依赖于正则,不然没有实际意义
/*replace
用来查找匹配一个正则表达式的字符串,然后使用新字符串代替匹配的字符串。
返回一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。
stringObject.replace(regexp/substr,replacement)
*/
console.log("replace:"+str.replace("bc","BC"));//aBCdefbc? 11 , 123 ff,6
console.log("replace:"+str.replace(/bc/,"BC"));//aBCdefbc? 11 , 123 ff,6
console.log("replace:"+str.replace(/bc/g,"BC"));//aBCdefBC? 11 , 123 ff,6;g表示全局查找

//三、截取类

/*
slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
stringObject.slice(start,end)
参数    描述
start    要抽取的片断的起始下标。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。
        也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。

end        紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括
        start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。
*/

console.log("slice:"+str.slice(2));//cdefbc? 11 , 123 ff,6
console.log("slice:"+str.slice(-2));//,6
console.log("slice:"+str.slice(1,6));//,cdef

/*
substring() 方法用于提取字符串中介于两个指定下标之间的字符。
stringObject.substring(start,stop)
与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数
slice() 比 substring() 要灵活一些,因为它允许使用负数作为参数。
*/
var str3="Hello world!"
console.log("substring:"+str3.substring(3,7))//lo w  3-7之间的数

/*
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。

stringObject.substr(start,length)
重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它。

*/

//toLowerCase、toUpperCase——大小写转换

console.log("toLowerCase:"+str3.toLowerCase())//hello world! 小写
console.log("toUpperCase:"+str3.toUpperCase())//HELLO WORLD! 大写
console.log("length:"+str3.length)//返回12,从1开始计数

/*concat() 方法用于连接两个或多个字符串。
语法
stringObject.concat(stringX,stringX,...,stringX)
*/
console.log("concat:"+str3.concat(str))//Hello world!abcdefbc? 11 , 123 ff,6
console.log("+     :"+str3+str)//Hello world!abcdefbc? 11 , 123 ff,6

var abc="hello world"

var abc2=abc.split("");
console.log("+     :"+abc.split("").join(" "))//h e l l o   w o r l d
console.log("+     :"+typeof abc2)//h e l l o   w o r l d
console.log("+     :"+abc2.push("f"))//h e l l o   w o r l d
console.log("+     :"+abc2)//h e l l o   w o r l d

/*
split() 方法用于把一个字符串分割成字符串数组。分割成数组后可以使用数组相关的使用方法,反回一个字符串数组
stringObject.split(separator,howmany)

一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括 separator 自身。

separator    必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
howmany        可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。
            如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
提示和注释
注释:如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
注释:String.split() 执行的操作与 Array.join 执行的操作是相反的。
*/
var str4="How are you doing today?"
console.log("length:"+str4.length)//24
console.log("split:"+str4.split(""))//H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?
console.log("length:"+str4.length)//24
console.log("split:"+str4.split(" "))//How,are,you,doing,today?
console.log("split:"+str4.split(" ",3))//How,are,you

console.log("split:"+str4.split("|",3))//How are you doing today? 没有|号,返回初始值

console.log("2:3:4:5".split(":"))    //将返回["2", "3", "4", "5"]
console.log("2?3?4?5".split("?"))    //将返回["2", "3", "4", "5"]

console.log("hello".split(""))    //["h", "e", "l", "l", "o"]

</script>
时间: 2024-10-06 12:39:35

javascript字符串笔记的相关文章

JavaScript字符串常用操作函数之学习笔记

字符串简介 使用英文单引号或双引号括起来,如:’Hello’,”World”,但是不能首尾的单引号和双引号必须一致,交错使用,如果要打印单引号或者双引号,可以使用转义字符\’(单引号),\”(双引号)  代码如下 复制代码 var str_1 = 'Hello World!';  //Hello World!var str_2 = "Hello World!";  //Hello World!var str_3 = '他说:"这样可以的."';  //他说:&quo

JavaScript学习笔记第一天——字符串连接的N种方法

Javascript 字符串的连接方法有多种,但效率却有很大区别. 1.逐个字符串相加 var arr = ['item 1', 'item 2', 'item 3', ...]; var list = ''; for (var i = 0, l = arr.length; i < l; i++) { list += '<li>' + arr[i] + '</li>'; } list = '<ul>' + list + '</ul>'; 这种最常见的,

Javascript读书笔记:字符串常用方法

concat() 连接多个字符串,返回合并后的字符串. 1 var s1="a"; 2 var s2="b"; 3 var s3="c"; 4 5 console.log(s1.concat(s2,s3));//abc 数组中的concat():将参数添加为数组的元素,返回新的数组. 1 var arr = [1, 2, 3]; 2 console.log(arr.concat(4, 5));//[1,2,3,4,5] indexOf() 查找子

Javascript读书笔记:函数定义和函数调用

定义函数 使用function关键字来定义函数,分为两种形式: 声明式函数定义: function add(m,n) { alert(m+n); } 这种方式等同于构造一个Function类的实例的方式: var add = new Function("m", "n", "alert(m+n);"); Function类构造方法的最后一个参数为函数体:"alert(m+n);",前面的都是函数的形参,参数必须是字符串形式的:&

javascript学习笔记---ECMAScript语法(引用类型)

引用类型通常叫做类(class). 本教程会讨论大量的 ECMAScript 预定义引用类型. 引用类型 引用类型通常叫做类(class),也就是说,遇到引用值,所处理的就是对象. 本教程会讨论大量的 ECMAScript 预定义引用类型. 从现在起,将重点讨论与已经讨论过的原始类型紧密相关的引用类型. 注意:从传统意义上来说,ECMAScript 并不真正具有类.事实上,除了说明不存在类,在 ECMA-262 中根本没有出现"类"这个词.ECMAScript 定义了"对象定

javascript学习笔记---ECMAScriptECMAScript 对象----定义类或对象

使用预定义对象只是面向对象语言的能力的一部分,它真正强大之处在于能够创建自己专用的类和对象. ECMAScript 拥有很多创建对象或类的方法. 原始的方式 因为对象的属性可以在对象创建后动态定义(后绑定),类似下面的代码: var oCar = new Object; oCar.color = "blue"; oCar.doors = 4; oCar.mpg = 25; oCar.showColor = function() { alert(this.color); };不过这里有一

javascript学习笔记---ECMAScriptECMAScript 对象----修改对象

通过使用 ECMAScript,不仅可以创建对象,还可以修改已有对象的行为. prototype 属性不仅可以定义构造函数的属性和方法,还可以为本地对象添加属性和方法. 创建新方法 通过已有的方法创建新方法Number.prototype.toHexString = function() { return this.toString(16); }; 在此环境中,关键字 this 指向 Number 的实例,因此可完全访问 Number 的所有方法.有了这段代码,可实现下面的操作: var iNu

javascript学习笔记---ECMAScript语法(变量)

变量声明关键字var: var i = 1: var t = "asd"; var test1 = "hi", test2 = "hello"; 声明变量不一定要初始化, var i;//ok 另一方面在使用变量前若未加关键字var,则此变量为全局变量(此特性需特别记住). 变量名字: 变量名需要遵守两条简单的规则: 第一个字符必须是字母.下划线(_)或美元符号($) 余下的字符可以是下划线.美元符号或任何字母或数字字符 命名变量规则: Came

【优波尔】JavaScript的笔记 (1) 简介 用法 输出 语法

JavaScript基础笔记整理(1) 2015.05.29 今日任务:简介 用法 输出 语法 一.JavaScript的简介 JavaScript是脚本语言 JavaScript 是轻量级的编程语言,可插入html的代码 学习JavaScript了你会那些知识? (1)JavaScript:直接写入html输出流 document.write("<h1>这是一个标题</h1>"); (2)JavaScript:对事件的反应 <button type=&q