//file.js
export const f = function (a,b) {
console.log(a)
console.log(b)
}
//main.js
import * as foo from "file.js"
foo.f(b=1);
Uncaught ReferenceError: b is not defined
//报错在 foo.f(b=1)这行.
//file.js
export const f = function (a,b) {
console.log(a)
console.log(b)
}
//main.js
import * as foo from "file.js"
foo.f(b=1);
Uncaught ReferenceError: b is not defined
//报错在 foo.f(b=1)这行.
//file.js
const f = function (param) {
console.log(param.a)
console.log(param.b)
}
//main.js
import * as foo from "file.js"
let param = {a:null,b:1}
foo.f(param);
我也是新手,可以这样写试试
javascript即使ES6也没有这种写法。
但是可以这样:
var f = ({a,b}) => {
console.log({a,b});
// 这就可以只用b了
console.log('我是b:', b)
};
f({b:1})
输出:
{ a: undefined, b: 1 }
我是b 1
这种写法实际上运用到了析构,而且恰好运用在函数参数上。
6 回答5.3k 阅读✓ 已解决
9 回答9.5k 阅读
5 回答3.8k 阅读✓ 已解决
4 回答8.1k 阅读✓ 已解决
7 回答10.1k 阅读
5 回答8.4k 阅读
2 回答10.5k 阅读✓ 已解决
应该是在函数声明的时候,赋默认值吧?