1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- //! 展开运算符
- //TODO spread ...
- // Math.max() 方法可以返回传输列表中的最大值
- console.log(Math.max(1, 56, 25, 68, 30)); // 68
- const array = [1, 56, 25, 68, 30];
- //TODO 求数组array中最大值
- var maxValue = array[0]; // 默认最大值 为 数组中的第一个元素
- array.forEach((v) => {
- if (v > maxValue) {
- maxValue = v;
- }
- });
- // 循环结束后 maxValue就是最大值
- console.log(maxValue); // 68
- // 通过apply方法去调用max方法 这样就可以将数组元素作为参数传给max
- console.log(Math.max.apply(undefined, array)); // 68
- //! 使用展开运算符
- console.log(Math.max(...array)); // 将数组中元素展开依次传入max方法中
- function sum(x, y) {
- console.log(x + y);
- }
- // x, y参数值 在一个数组中
- var arr = [2, 3];
- sum(...arr);
- // 拷贝数组
- var arr1 = [1, 2, 3];
- var arr2 = arr1.slice(0);
- var arr3 = [...arr1];
- // 合并多个数组
- var arr1 = [0, 1, 2];
- var arr2 = [3, 4, 5];
- var arr3 = [...arr1, ...arr2];
- // 在对象上 也可以使用 spread
- var obj1 = { foo: 'bar', x: 42 };
- var obj2 = { foo: 'baz', y: 13 };
- var clonedObj = { ...obj1 };
- // 克隆后的对象:{ foo: "bar", x: 42 }
- var mergedObj = { ...obj1, ...obj2 };
- // 合并后的对象:{ foo: "baz", x: 42, y: 13 }
|