JavaScript 字符串 - String 的静态方法(String.fromCharCode()、String.fromCodePoint()、String.raw())

String.fromCharCode()

1、基本介绍
String.fromCharCode(num1, num2, num3, ...)
  • 根据 Unicode 编码返回对应的字符
参数说明是否必需
num1, num2, num3,...Unicode 编码值必需
2、演示
let result1 = String.fromCharCode(65);
let result2 = String.fromCharCode(97);

console.log(result1);
console.log(result2);
# 输出结果

A
a
let result = String.fromCharCode(65, 97);

console.log(result);
# 输出结果
Aa

String.fromCodePoint()

1、基本介绍
String.fromCodePoint(num1, num2, num3,...)
  • 根据 Unicode 编码返回对应的字符,类似于 String.fromCharCode(),但支持更大的 Unicode 码点
参数说明是否必需
num1, num2, num3,...Unicode 编码值必需
2、演示
let result1 = String.fromCodePoint(0x1f600);
let result2 = String.fromCodePoint(0x1f601);

console.log(result1);
console.log(result2);
# 输出结果

😀
😁
let result = String.fromCodePoint(0x1f600, 0x1f601);

console.log(result);
# 输出结果

😀😁

String.raw()

1、基本介绍
String.raw(strings, ...values)
  • 返回原始字符串(不转义反斜杠 \
参数说明
strings一个数组,包含模板字符串中的所有静态部分
values一个数组,包含所有插入的表达式值
2、演示
// 普通字符串中包含反斜杠,会被转义
let str1 = "Hello\tWorld";

// 模板字符串中包含反斜杠,不会被转义
let str2 = String.raw`Hello\tWorld`;

// 普通字符串中包含反斜杠,如果不想被转义,需要在反斜杠前面再加一个反斜杠
let str3 =  "Hello\\tWorld";

console.log(str1);
console.log(str2);
console.log(str3);
# 输出结果

Hello	World
Hello\tWorld
Hello\tWorld
3、手动实现
function myRaw(strings, ...values) {

  // 处理标签模板调用(如果 strings 是数组且具有 raw 属性)
  if (Array.isArray(strings) && strings.raw) {
    let result = "";
    for (let i = 0; i < strings.raw.length; i++) {
      result += strings.raw[i];
      if (i < values.length) {
        result += values[i];
      }
    }
    return result;
  }

  // 处理普通函数调用方式
  else if (Array.isArray(strings)) {
    let result = "";
    for (let i = 0; i < strings.length; i++) {
      result += strings[i];
      if (i < values.length) {
        result += values[i];
      }
    }
    return result;
  }

  // 处理非标准调用
  return "";
}

let str = myRaw`Hello\tWorld`;

console.log(str);
# 输出结果

Hello\tWorld
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值