Skip to content

  • 体验新版
    • 正在加载...
  • 登录
  • CSDN 技术社区
  • CSDN博客CSDN博客
  • Issue
  • #426

CSDN博客
CSDN博客
  • 项目概览

CSDN 技术社区 / CSDN博客

通知 1857
Star 135
Fork 129
  • 代码
    • 文件
    • 提交
    • 分支
    • Tags
    • 贡献者
    • 分支图
    • Diff
  • Issue 159
    • 列表
    • 看板
    • 标记
    • 里程碑
  • 合并请求 0
  • Wiki 0
    • Wiki
  • 分析
    • 仓库
    • DevOps
  • 项目成员
  • Pages
CSDN博客
CSDN博客
  • 项目概览
    • 项目概览
    • 详情
    • 发布
  • 仓库
    • 仓库
    • 文件
    • 提交
    • 分支
    • 标签
    • 贡献者
    • 分支图
    • 比较
  • Issue 159
    • Issue 159
    • 列表
    • 看板
    • 标记
    • 里程碑
  • 合并请求 0
    • 合并请求 0
  • Pages
  • 分析
    • 分析
    • 仓库分析
    • DevOps
  • Wiki 0
    • Wiki
  • 成员
    • 成员
  • 收起侧边栏
  • 动态
  • 分支图
  • 创建新Issue
  • 提交
  • Issue看板
已关闭
开放中
Opened 4月 23, 2025 by kovlistudio@kovlistudio

mermaid代码在发布文章且文章加载完以后,苹果macbook或者macstudio等设备上均无法显示mermaid代码生成的图片(编辑预览又是正常的)

一、贵公司给了个测试链接,https://blog.csdn.net/m0_46636474/article/details/145510490 这个链接,我在苹果电脑上MacbookPro(Intel芯片)和苹果电脑MacStudio(M1Max芯片),在苹果电脑的Chrome浏览器上,编辑预览的时候都正常显示图片,但是发布以后,等页面加载完以后,就无法显示图片,同样的代码有道云笔记,简书等等其他平台在苹果电脑的chrome浏览器均正常,请用mac设备核查这个问题。

二、上述网页代码:主要是这段(把//去掉,加//是防止自动转成炸弹图):

flowchart LR
Array --> 元素1["85 [索引0]"]
Array --> 元素2["92 [索引1]"]
Array --> 元素3["78 [索引2]"]
Array --> 方法["push/filter/map"]

文章全代码:#### 一、Object:万物皆对象的“盒子” Object是JavaScript中最基础的数据容器,像动态存储的抽屉,可随时添加/删除属性,支持键值对存储 [^1]。

示例:创建用户信息对象
// 方式1:字面量直接声明
const user = {
name: '小明',
age: 20,
getInfo: function() {
return `${this.name}今年${this.age}岁`;
}
};
console.log(user.getInfo()); // "小明今年20岁"

// 方式2:构造函数new Object()
const car = new Object();
car.brand = 'Toyota';
car.drive = () => console.log('行驶中...');

car.drive(); // "行驶中..."

[^1]: 参考资料3说明对象通过动态属性管理数据


二、Array:有序的“列表清单”

数组是按顺序排列的集合,每个元素有索引(从0开始),支持动态增删改查 [^2]。

示例:操作学生分数数组
// 创建数组(两种方式)
const scores1 = [85, 92, 78]; // 字面量快捷方式
const scores2 = new Array(70, 88); // 构造函数

// 常用方法
scores1.push(95); // 末尾添加 → [85, 92, 78, 95]
scores1.pop(); // 删除末尾 → [85, 92, 78]
const highScores = scores1.filter(score => score > 90); // 过滤 → [92]
const str = scores1.join("、"); // 转字符串 → "85、92、78"

// 用map生成新数组
const comments = scores1.map(score =>
score >= 80 ? "优秀" : "待提高"
); // ["优秀", "优秀", "待提高"]

[^2]: 参考资料6详细列出了数组的push/filter/map等方法

flowchart LR
Array --> 元素1["85 [索引0]"]
Array --> 元素2["92 [索引1]"]
Array --> 元素3["78 [索引2]"]
Array --> 方法["push/filter/map"]

三、Date:时间管理的“日历”

Date对象用于处理日期和时间的计算,能精确到毫秒 [^3]。

示例:记录事件时间
// 创建当前时间
const now = new Date();
console.log(now); // 输出类似:Thu Dec 07 2023 14:30:00 GMT+0800

// 指定日期(注意月份从0开始)
const birthday = new Date(2000, 0, 1); // 2000年1月1日
console.log(birthday.getFullYear()); // 2000

// 计算时间差(毫秒为单位)
const diff = now - birthday;
const years = Math.floor(diff / (1000*60*60*24*365));
console.log(`年龄:${years}岁`);

[^3]: 参考资料1和2重点描述了Date类型的方法(如getFullYear())


四、RegExp:文字侦探“正则表达式”

RegExp用模式匹配规则来查找或验证字符串,类似通配符的增强版 [^4]。

示例:验证邮箱格式
// 创建正则表达式(两种方式)
const emailPattern1 = /^[a-zA-Z0-9_]+@[a-z]+\.[a-z]+$/; // 字面量
const emailPattern2 = new RegExp('^\\w+@[a-z]+\\.[a-z]+{msg}#39;); // 构造函数

// 测试字符串是否符合规则
console.log(emailPattern1.test('user@example.com')); // true
console.log(emailPattern1.test('invalid.email')); // false

// 提取字符串中的数字
const text = "订单号:7890,金额:¥560";
const numbers = text.match(/\d+/g);
console.log(numbers); // ["7890", "560"]

[^4]: 参考资料1和2提到RegExp的test方法和实例属性

现在的程序员应该八成都是苹果电脑,而且大部分苹果电脑用户使用chrome浏览器,我这边两台苹果设备都这样了,在同样的网络环境和同样的设备下,同样的md代码下,其他平台均正常展示,只有csdn这样的问题,现在只能传截图-传图的方式

Edited 4月 23, 2025 by kovlistudio
指派人
分配到
无
里程碑
无
分配里程碑
工时统计
无
截止日期
无
标识: csdn/blog#426
渝ICP备2023009037号

京公网安备11010502055752号

网络110报警服务 Powered by GitLab CE v13.7
开源知识
Git 入门 Pro Git 电子书 在线学 Git
Markdown 基础入门 IT 技术知识开源图谱
帮助
使用手册 反馈建议 博客
《GitCode 隐私声明》 《GitCode 服务条款》 关于GitCode
Powered by GitLab CE v13.7