理顺 JavaScript (6) 关于字符串的其他问题


可以使用单引号或双引号
alert("万一的 'Delphi' 博客"); //万一的 'Delphi' 博客
alert('万一的 "Delphi" 博客'); //万一的 "Delphi" 博客


转义字符
/* \x 与 \u 分别跟 2 位和 4 位十六进制数, 可转换为一个字符; ECMAScript 标准不再支持八进制 */
alert('\x41');         //A
alert('\u0041');       //A
alert('\u4E07\u4e00'); //万一

/*其他常用的转义字符还有:*/
\0 \b \t \n \v \f \r \" \' \\

/* 如果给一个没有规定的字符转义会被忽略; 但这有时会很有用, 譬如可以阻止某个 HTML 标签被识别 */
alert('\A');  //A

/* 顺便想到, 在 HTML 中类似的转义是使用 & 符号 */
document.write('&#65&#66');  //AB
document.write('
'); document.write('&#19975&#19968'); //万一

布尔到字符串
var b = true;
alert('-- ' + b + ' --'); // -- true --
b = !b;
alert('-- ' + b + ' --'); // -- false --


数字到字符串
var str;
str = 111 + 222; 
alert(str); //333

str = '' + 111 + 222; 
alert(str); //111222

str = 111 + '' + 222; 
alert(str); //111222

str = 111 + 222 + ''; 
alert(str); //333

str = String(111) + String(222);
alert(str); //111222

var a=111, b=222;
str = a.toString() + b.toString();
alert(str); //111222


可以给 String 类的对象自定义成员
var str = new String('ABC');
/* 给 str 添加成员 */
str.book = function() {return '《' + this + '》'}
str.name = '万一';

alert(str.book()); //《ABC》
alert(str.name);   //万一

/* 删除成员 */
delete str.name;
alert(str.name);   //undefined


可以给 String 类自定义成员, 这太有趣了!
//使用 prototype 关键字给 String 类添加成员
String.prototype.book = function() {return '《' + this + '》'};
String.prototype.name = '万一';

var str = new String('ABC');
alert(str.book()); //《ABC》
alert(str.name);   //万一

/* 任何字符串都可以使用了 */
alert('12345'.book()); //《12345》
alert('12345'.name);   //万一

/* 删除一个 */
delete String.prototype.name;
alert(str.name);  //undefined

//很好的功能, 更好的是这个 js 的类和对象都是可行的.


原文地址:https://www.cnblogs.com/del/p/1398934.html