WebStudy-JavaScript String

JavaScript 字符串

一个字符串用于存储一系列字符就像 “John Doe”.

一个字符串可以使用单引号或双引号:

var carname=“Volvo XC60”;
var carname=‘Volvo XC60’;

  • 你使用位置(索引)可以访问字符串中任何的字符。字符串的索引从零开始, 所以字符串第一字符为 [0],第二个字符为 [1], 等等。
  • 字符串(String)使用长度属性length来计算字符串的长度
  • 特殊字符:
    Javascript 中可以使用反斜线(\)插入特殊符号,如:撇号,引号等其他特殊符号。

查看如下 JavaScript 代码:

var txt=“We are the so-called “Vikings” from the north.”;
document.write(txt);

在JavaScript中,字符串的开始和停止使用单引号或双引号。这意味着,上面的字符串将被切成: We are the so-called

解决以上的问题可以使用反斜线来转义引号:

var txt=“We are the so-called “Vikings” from the north.”;
document.write(txt);

JavaScript将输出正确的文本字符串:We are the so-called “Vikings” from the north.

  • 下面列出其他特殊字符,可以使用反斜线转义特殊字符:
    转义特殊字符

String 对象

String 对象用于处理文本(字符串)。

String 对象创建方法: new String()。
var txt = new String(“string”);
或者更简单方式:
var txt = “string”;

String 对象属性

constructor
constructor 属性返回对 String 对象属性创建的函数。
语法:string.constructor
实例:

var txt = "Hello World!";
document.write(txt.constructor);

输出:function String() { [native code] }
length
length 属性返回字符串的长度(字符数)。
语法:string.length
实例:

<script>

var txt = "Hello World!";
document.write(txt.length);

</script>

输出:12
prototype
prototype 属性允许您向对象添加属性和方法
注意: Prototype 是全局属性,适用于所有的 Javascript 对象。
语法:object.prototype.name=value
实例:

function employee(name,jobtitle,born){
    this.name=name;
    this.jobtitle=jobtitle;
    this.born=born;
}
var fred=new employee("Fred Flintstone","Caveman",1970);
employee.prototype.salary=null;
fred.salary=20000;
document.write(fred.salary);

输出:20000

String对象方法
// charAt() 方法可返回指定位置的字符。
// 第一个字符位置为 0, 第二个字符位置为 1,以此类推.

var str = "HELLO WORLD";
var n = str.charAt(str.length-1);   
console.log(n);

// charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。
// 字符串中第一个字符的位置为 0, 第二个字符位置为 1,以此类推。

var str = "HELLO WORLD";
var n = str.charCodeAt(0);
console.log(n);

// concat() 方法用于连接两个或多个字符串。
// 该方法没有改变原有字符串,但是会返回连接两个或多个字符串新字符串。

var str1 = "Hello ";
var str2 = "world!";
var n = str1.concat("new",str2);
console.log(n);

// fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串。
// 注意:该方法是 String 的静态方法,字符串中的每个字符都由单独的 Unicode 数字编码指定。
// 使用语法:

 String.fromCharCode()var n = String.fromCharCode(65);
console.log(n);

// indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
// 如果没有找到匹配的字符串则返回 -1。
// 注意: indexOf() 方法区分大小写。

var str="Hello world, welcome to the universe.";
var n=str.indexOf("welcome");
console.log(n);

// lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,如果指定第二个参数 start,则在一个字符串中的指定位置从后向前搜索。
// 注意: 该方法将从后向前检索字符串,但返回是从起始位置 (0) 开始计算子字符串最后出现的位置。 看它是否含有字符串。
// 开始检索的位置在字符串的 start 处或字符串的结尾(没有指定 start 时)。
// 如果没有找到匹配字符串则返回 -1 。
// 注意:lastIndexOf() 方法是区分大小写的!
var str=“I runoob,to runoob site.”;
var n=str.lastIndexOf(“runoob”);
console.log(n)

// includes() 方法用于判断字符串是否包含指定的子字符串。
// 如果找到匹配的字符串则返回 true,否则返回 false。
// 注意: includes() 方法区分大小写。

var str = "Hello world, welcome to the Runoob。";
var n = str.includes("world");
console.log(n);

// toLowerCase() 方法用于把字符串转换为小写。

var str="Runoob";
document.write(str.toLowerCase());

// toUpperCase() 方法用于把字符串转换为大写。

var str="Runoob";
document.write(str.toUpperCase());

// trim() 方法用于删除字符串的头尾空格。
// trim() 方法不会改变原始字符串。

var str = "       Runoob        ";
document.write(str.trim());

// toLocaleLowerCase() 方法根据本地主机的语言环境把字符串转换为小写。
// 本地是根据浏览器的语言设置来判断的。
// 通常,该方法与 toLowerCase() 方法返回的结果相同,只有几种语言(如土耳其语)具有地方特有的大小写映射。
// 注意: toLocaleLowerCase() 方法没有改变原始字符串。
// 提示: 使用 toLocaleUpperCase() 方法根据本地主机的语言将字符串转换为大写。

var str = "Runoob";
var res = str.toLocaleLowerCase();
document.write(res)

// toLocaleUpperCase() 方法根据本地主机的语言环境把字符串转换为大写。
// 本地是根据浏览器的语言设置来判断的。

// valueOf() 方法可返回 String 对象的原始值。
// 注意: valueOf() 方法通常由 JavaScript 在后台自动进行调用,而不是显式地处于代码中。

var str="Hello world!";
document.write(str.valueOf());

// toString() 方法返回一个表示 String 对象的值。

var str=123;
var res=str.toString();
console.log(typeof(res));

// slice(start, end) 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
// 使用 start(包含) 和 end(不包含) 参数来指定字符串提取的部分。
// 字符串中第一个字符位置为 0, 第二个字符位置为 1, 以此类推。
// 提示: 如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。

var str="Hello world!";
var n=str.slice(1,5);
console.log(n);

// split() 方法用于把一个字符串分割成字符串数组。
// 提示: 如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
// 注意: split() 方法不改变原始字符串。

var str="How are you doing today?";
var n=str.split("");
console.log(n)

// startsWith() 方法用于检测字符串是否以指定的子字符串开始。
// 如果是以指定的子字符串开头返回 true,否则 false。
// startsWith() 方法对大小写敏感。

var str = "Hello world, welcome to the Runoob.";
var n = str.startsWith("Hello");
console.log(n);

// substr() 方法可在字符串中抽取从 开始 下标开始的指定数目的字符。
// 提示: substr() 的参数指定的是子串的开始位置和长度,因此它可以替代 substring() 和 slice() 来使用。
// 在 IE 4 中,参数 start 的值无效。在这个 BUG 中,start 规定的是第 0 个字符的位置。在之后的版本中,此 BUG 已被修正。
// ECMAscript 没有对该方法进行标准化,因此反对使用它。
// 注意: substr() 方法不会改变源字符串。

var str="Hello world!";
var n=str.substr(2,3)
console.log(n);

// substring() 方法用于提取字符串中介于两个指定下标之间的字符。
// substring() 方法返回的子串包括 开始 处的字符,但不包括 结束 处的字符。

var str="Hello world!";
document.write(str.substring(3)+"<br>");
document.write(str.substring(3,7));

// repeat() 方法字符串复制指定次数。

var str = "Runoob";
var n_str=str.repeat(2);
console.log(n_str)

String HTML包装方法
// anchor() 创建 HTML 锚。
//anchor() 方法用于创建 HTML 锚。
// 该方法返回加了 <a> 标签的字符串, 如下所示:
// <a name=“anchorname”>string</a>

var txt="Chapter 10";
txt.anchor("chap10");
alert(txt.anchor("chap10"));

// big() 用大号字体显示字符串。

 var str = "Hello world!";
document.write(str.big());

// blink() 显示闪动字符串。

var str = "Hello world!";
document.write(str.blink());

// bold() 使用粗体显示字符串。

// fixed() 以打字机文本显示字符串。

var str = "Hello world!";
document.write(str.fixed());

// fontcolor() 使用指定的颜色来显示字符串。

// fontsize() 使用指定的尺寸来显示字符串。

 var str = "Hello world!";
document.write(str.fontcolor("blue").fontsize(28));

// italics() 使用斜体显示字符串。

var str = "Hello world!";
document.write(str.italics());

// link() 将字符串显示为链接。

var str = "Free Web Building Tutorials!";
document.write(str.link("http://www.w3cschool.cc"));

// small() 使用小字号来显示字符串。
// strike() 用于显示加删除线的字符串。

var str = "Hello world!";
document.write(str.strike());

// sub() 把字符串显示为下标。
// sup() 把字符串显示为上标。

var str = "Hello world!";
document.write(str.sup());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值