首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ES6 js关键字作为param精确行为

ES6 js关键字作为param精确行为
EN

Stack Overflow用户
提问于 2019-06-28 07:42:51
回答 2查看 63关注 0票数 3

我有一个代码,希望返回‘未定义’或任何错误,但它提供输出如前所述。

代码语言:javascript
复制
let i = (x, c) => {
    c(x);
};

i(20, (undefined) => {
    let j = undefined;
    console.log(j);
});


function y(undefined) {
    let a = undefined;
    console.log(a);
}
y(90);

如果在函数参数中使用,保留词是如何工作和改变行为的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-28 07:46:15

undefined不是一个保留字。

它是一个全局的、只读的变量。

没有什么可以阻止您在更窄的范围内定义同名的另一个变量。

票数 4
EN

Stack Overflow用户

发布于 2019-06-28 07:48:38

undefined,而不是,您可以在这里看到:grammar#Keywords

在您的场景中,undefined实际上保存了回调值,第一种情况是20,第二种情况是90。

例如,如果要将值undefined分配给作用域ja,则可以使用void 0。关于void如何工作的更多信息可以在这里找到(而且,void实际上是javascript中的一个保留词):https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void

代码语言:javascript
复制
let i = (x, c) => {
    c(x);
};

i(20, (undefined) => {
    let j = void 0;
    console.log(j);
});


function y(undefined) {
    let a = void 0;
    console.log(a);
}
y(90);

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56802846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档