1.Nodejs开发注意和前端区别
简介
安装以及初体验.可以参考前端专栏的第七章
7.nodejs和npm简单使用_npmjs官网-CSDN博客
浏览器的javascript
nodejs的javascript
- 在 Node.js 中,没有
window
或document
全局对象,所以不能使用浏览器中的DOM和BOM对象。 - Node.js 提供了许多核心模块,如
fs
(文件系统)、http
(网络请求)等,这些是在浏览器环境中无法直接使用的。
以下对象不能再Nodejs中使用
Nodejs的顶级对象是 gloab. es2020引入了gloabThis.
gloab和gloabThis是相等的.
尽管都使用ECMScript语法基础相同,但根据运行环境的不同,Node.js 和浏览器中的 JavaScript 各自有着适应其特定场景的功能和API。
js字符串拼接优化
在 JavaScript 中,字符串拼接是一个常见的操作。为了保证性能和可读性,我们需要选择高效的方式来进行字符串拼接,尤其是在处理大量数据或循环中时。
一、推荐方式:使用数组 + join
这是 最高效且兼容性最好的字符串拼接方法,尤其适用于需要多次拼接的场景(如循环)。
let arr = [];
for (let i = 0; i < 10000; i++) {arr.push('item' + i);
}
let result = arr.join('');
避免了频繁创建新字符串对象(不会产生中间垃圾字符串)性能最好,特别是在老版本浏览器中优势明显
二、ES6 模板字符串(现代写法,简洁易读)
适合少量拼接、结构清晰的情况。
const name = "Alice";
const age = 25;
const str = `Name: ${name}, Age: ${age}`;
console.log(str); // Name: Alice, Age: 25
可跨行
支持变量插入
语法简洁、可读性强
⚠️ 注意:在大量拼接(如上万次)时,模板字符串效率略低于数组+join()。
不推荐:使用 += 拼接(尤其在循环中)
虽然写法简单,但在循环中频繁使用 += 会造成性能问题,因为每次拼接都会创建新的字符串对象。
let str = '';
for (let i = 0; i < 10000; i++) {str += 'item' + i;
}
❌ 缺点:
每次拼接都创建一个新字符串,旧字符串被丢弃(GC 压力大)
在大数据量下性能差
性能对比(大致排序)
方法 性能
数组 + join('') ⭐⭐⭐⭐⭐ 最快
ES6 模板字符串 ⭐⭐⭐⭐ 简洁好用
+= 拼接 ⭐⭐ 大量拼接慢
concat() 方法 ⭐ 不推荐
推荐方式
- 少量拼接(如 UI 字符串) 模板字符串 ${}
- 多次拼接 / 循环拼接 使用数组 push() 后 join('')
构建 HTML 片段 模板字符串 + 循环内先 push 再 join
const items = ['Apple', 'Banana', 'Cherry'];
let html = [];html.push('<ul>');
items.forEach(item => {html.push(`<li>${item}</li>`);
});
html.push('</ul>');const list = html.join('\n');
document.body.innerHTML = list;