前端之JavaScript面向对象开发(11)

7.String类型

表示零或多个 16 位 Unicode 字符序列。

let firstName = "juzi1"; 
let lastName = 'juzi2'; 
let lastName = `designbyly`

字符串可以使用双引号(")、 单引号(')或反引号(`)标示.

let firstName = 'xxx"; // 语法错误:开头和结尾的引号必须是同一种

7.1.字符字面量

 备注:可以出现在字符串中的任意位置,且可以作为单个字符被解释。

7.2.字符串的特点

let lang = "JavaScript "; 
lang = lang + "by designbyly";

7.3.转换为字符串

let age = 1314; 
let ageAsString = age.toString(); // 字符串"1314" 
let found = true; 
let foundAsString = found.toString(); // 字符串"true"

备注:null 和 undefined 值没有 toString()方法

let num = 10; 
console.log(num.toString()); // "10" 
console.log(num.toString(2)); // "1010" 
console.log(num.toString(8)); // "12" 
console.log(num.toString(10)); // "10" 
console.log(num.toString(16)); // "a" 

       不确定一个值是不是 null 或 undefined,可以使用 String()转型函数,它始终会返回表 示相应类型值的字符串。

7.4.模板字面量

let pageHTML = ` 
<div> 
 <a href="#"> 
 <span>designbyly</span> 
 </a> 
</div>`;
// 这个模板字面量没有意料之外的字符
let thirdTemplateLiteral = `first line 
second line`; 
console.log(thirdTemplateLiteral); 
// first line 
// second line 

7.5.字符串插值

模板字面量不是字符串,而是一种特殊的 JavaScript 句法表达式

字符串插值通过在${}中使用一个 JavaScript 表达式实现:

let value = ''; 
function append() { 
 value = `${value}abc` 
 console.log(value); 
} 
append(); // abc 
append(); // abcabc 
append(); // abcabcabc 

7.6. 模板字面量标签函数

       标签函数 接收到的参数依次是原始字符串数组和对每个表达式求值的结果。这个函数的返回值是对模板字面量求 值得到的字符串。

let a = 600; 
let b = 900; 
function simpleTag(strings, aValExpression, bValExpression, sumExpression) { 
 console.log(strings); 
 console.log(aValExpression); 
 console.log(bValExpression); 
 console.log(sumExpression); 
 return 'foobar'; 
} 
let untaggedResult = `${ a } + ${ b } = ${ a + b }`; 
let taggedResult = simpleTag`${ a } + ${ b } = ${ a + b }`; 
// ["", " + ", " = ", ""] 
// 600 
// 900 
// 1500 
console.log(untaggedResult); // "600 + 900 = 1500" 
console.log(taggedResult); // "foobar"

7.7.原始字符串

// Unicode 示例
// \u00A9 是版权符号
console.log(`\u00A9`); // © 
console.log(String.raw`\u00A9`); // \u00A9

8.String()函数遵循规则

  1. 如果值有 toString()方法,则调用该方法(不传参数)并返回结果。
  2.  如果值是 null,返回"null"。 
  3. 如果值是 undefined,返回"undefined"。
let value1 = 10; 
let value2 = true; 
let value3 = null; 
let value4; 
console.log(String(value1)); // "10" 
console.log(String(value2)); // "true" 
console.log(String(value3)); // "null" 
console.log(String(value4)); // "undefined"

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈工程师MrL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值