我想将事件侦听器添加到这样的字段中
field.addEventListener("keyup", (event) => {
if (event.keyCode === 13) {
event.preventDefault();
// do something
}
});
是否有一种干净的方法可以保留event
并从中破坏keyCode
,因为我同时需要两者?
答案 0 :(得分:2)
您可以将其分解为对象,在参数列表中,该对象没有消失,但是可以将其从arguments
object中拉出。
哪个代码不会更好...
function perform({ baz }) {
console.log(baz);
console.log(arguments[0]);
}
var object = { foo: 'bar', baz: 42 };
perform(object);
答案 1 :(得分:1)
您可以在新的const变量中破坏对象。
field.addEventListener("keyup", (event) => {
const { keyCode } = event;
if (keyCode === 13) {
event.preventDefault();
// do something
}
});
答案 2 :(得分:1)
您可能会喜欢,
const use = (i, cb) => cb(i, i)
use(doSomething(), (event, { keyCode }) => {
//
});
答案 3 :(得分:0)
不幸的是,不,不是我想的那样。您可以执行以下操作:
field.addEventListener("keyup", event => {
// whatever you want to destructure
const {keyCode} = event;
if (keyCode === 13) {
event.preventDefault();
// do something
}
});
但是,这可能没有太大帮助,因为我确定您想在事件处理程序的参数列表中进行分解。