当前位置:首页 > JavaScript

js 实现 tolowercase

2026-03-15 08:37:46JavaScript

实现 JavaScript 的 toLowerCase 方法

在 JavaScript 中,字符串原生提供了 toLowerCase() 方法,用于将字符串转换为小写形式。如果需要手动实现类似功能,可以通过以下方式:

js 实现 tolowercase

原生方法

直接调用字符串的 toLowerCase() 方法:

js 实现 tolowercase

const str = "HELLO WORLD";
const lowerStr = str.toLowerCase();
console.log(lowerStr); // 输出: "hello world"

手动实现

通过遍历字符串并逐个字符转换:

function toLowerCase(str) {
    let result = '';
    for (let i = 0; i < str.length; i++) {
        const charCode = str.charCodeAt(i);
        // 检查是否为大写字母(A-Z)
        if (charCode >= 65 && charCode <= 90) {
            // 转换为小写字母(a-z)
            result += String.fromCharCode(charCode + 32);
        } else {
            result += str[i];
        }
    }
    return result;
}

const str = "HELLO WORLD";
console.log(toLowerCase(str)); // 输出: "hello world"

使用 Unicode 属性

利用 Unicode 属性实现更全面的转换(支持非 ASCII 字符):

function toLowerCase(str) {
    return str.replace(/./g, (char) => {
        const upper = char.toUpperCase();
        if (upper !== char) {
            return char; // 已经是小写
        }
        return char.toLowerCase();
    });
}

const str = "HÉLLÖ WÖRLD";
console.log(toLowerCase(str)); // 输出: "héllö wörld"

注意事项

  • 原生 toLowerCase() 方法已经处理了 Unicode 和多语言字符,手动实现可能无法覆盖所有情况。
  • 手动实现时需注意性能问题,尤其是在处理长字符串时。

标签: jstolowercase
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。 // 方…

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以直…

jquery.js

jquery.js

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互等操作。以下是关于 jQuery.js 的核心信息和使用方法: 获取 jQ…

js实现点击显示和隐藏

js实现点击显示和隐藏

实现点击显示和隐藏的JavaScript方法 使用classList.toggle切换类名 通过添加/移除CSS类控制元素的显示与隐藏,需提前在CSS中定义隐藏样式(如display: none)。…

js实现选题

js实现选题

实现选题功能的JavaScript方法 基础实现方案 使用数组存储选项,通过随机索引选取: const options = ['选项A', '选项B', '选项C', '选项D']; const r…

js实现图

js实现图

JavaScript 实现图的常用方法 在 JavaScript 中,图(Graph)可以通过多种方式实现,常见的包括邻接表(Adjacency List)和邻接矩阵(Adjacency Matrix…