模块导入和导出
形式1
function get_jenkins(){
return "jenkins....."
}
function test_cc(){
return "4444444"
}
export {get_jenkins,test_cc}
// 主函数
import { get_jenkins, test_cc } from './module.js';
console.log(get_jenkins());
console.log(test_cc());
形式2
// module.js
export function get_jenkins(){
return "jenkins....."
}
// main.js
import { get_jenkins } from './module.js';
console.log(get_jenkins());
JS的箭头函数
在 ES6 中,箭头函数(Arrow Functions)是一种更简洁的函数定义方式。它们具有更简洁的语法,并且不会绑定自己的 this
值
箭头函数使得代码更简洁,尤其是在处理回调函数时
// 单行函数
const add = (a, b) => a + b;
console.log(add(2, 3));
// 多行函数
const multiply = (a, b) => {
const result = a * b;
return result;
};
console.log(multiply(2, 3));
// 无参数函数
const sayHello = () => console.log("Hello!");
sayHello(); // Hello!
// 单个参数
const square = x => x * x;
console.log(square(4));
async await
在Node.js中进行异步测试是一个很常见的需求。
https://blog.csdn.net/knight_zhou/article/details/139095847
JS的对象(object)
,JavaScript 中的对象(Object
)可以被视为一种字典(或关联数组)。它们用于存储键值对,允许你通过键(属性名)访问对应的值。
const dic= {
"name": "knight",
"city": "cs"
};
// 访问字典
console.log(dic["name"]);
JS的Map
Map
和 Object
是 JavaScript 中用于存储键值对的两种数据结构,它们有一些重要的区别:
1. 键的类型
Object:
只能使用字符串和符号作为键。
其他类型的键会被自动转换为字符串。Map:
可以使用任何类型的值作为键,包括对象、函数、数字等。2. 顺序
Object:
属性的顺序是无序的(在 ES6 之后,字符串键的插入顺序会被保留,但不涉及符号键)。Map:
是有序的,遍历时会按照插入的顺序返回键值对。3. 方法和属性
Object:
使用 Object.keys()、Object.values() 和 Object.entries() 来获取键、值和键值对。
没有内置的方法来直接获取大小。Map:
提供了 size 属性来获取元素数量。
有丰富的方法,如 set()、get()、has()、delete() 和 clear()。
// Object 示例
const obj = {
name: "Alice",
age: 30
};
obj["age"] = 31; // 修改属性
console.log(obj); // { name: 'Alice', age: 31 }
// Map 示例
const map = new Map();
map.set("name", "Alice");
map.set("age", 30);
map.set("age", 31); // 修改属性
console.log(map); // Map { 'name' => 'Alice', 'age' => 31 }
JS的数组
const animals = ["dog", "cat", "bird"];
// 添加元素
animals.push("fish");
// 删除元素
animals.pop();
// 遍历数组
animals.forEach(animal => {
console.log(animal);
});
// 创建新数组,获取每个动物名称的长度
const lengths = animals.map(animal => animal.length);
console.log(lengths); // 输出: [3, 3, 4]
数组的操作
hh=[
["aa","bb","cc"],
["ee","dd"]
]
//
new_hh=hh.map(row=>row.join(','))
数组赋值
在 JavaScript 中,这段代码使用了数组解构赋值的语法。让我们逐步分析它:
-
数组解构赋值:
const [rows]
是在从数组中提取值的过程中使用的语法。它的作用是将数组中的第一个元素赋值给变量rows
。 -
数组内容:右侧
["aa", "bb", "cc"]
是一个包含三个字符串的数组。 -
赋值过程:当执行这段代码时,
rows
将被赋值为数组中的第一个元素,即"aa"
const [rows]=["aa","bb","cc"]
因此,最终结果是 rows
的值为 "aa"
。如果你想要获取数组中的其他元素,可以使用类似的方式:
const [first, second, third] = ["aa", "bb", "cc"];
JS的Object和JSON
const person = {
name: 'Alice',
age: 30,
isStudent: false,
};
// 将对象转换为 JSON 字符串
const jsonString = JSON.stringify(person);
console.log(jsonString); // {"name":"Alice","age":30,"isStudent":false}
// 将 JSON 字符串转换为对象
const parsedObject = JSON.parse(jsonString);
console.log(parsedObject); // { name: 'Alice', age: 30, isStudent: false }
ES6的类
是的,ES6(ECMAScript 2015)引入了 class
语法,使得创建对象和继承变得更加简单和直观。以下是一个基本的示例:
// 定义一个类
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} makes a noise.`);
}
}
// 继承
class Dog extends Animal {
speak() {
console.log(`${this.name} barks.`);
}
}
// 使用类
const dog = new Dog('Rex');
dog.speak(); // 输出: Rex barks.