我知道要查找 javascript 中是否未声明变量,我可以使用if (typeof variable === 'undefined'). 如果我将变量声明为 undefined ( var variable = undefined),则 if 语句仍返回 true。在 JavaScript 中,是否有可能找到未声明的变量和值为 undefined 的变量之间的区别?我知道它们很相似,但是这样做const variable = undefined然后variable = "something else"会抛出错误,所以它们一定是不同的。
const variable = undefined
if (typeof variable === 'undefined') {
console.log('"variable" is undefined')
}
if (typeof undeclaredVariable === 'undefined') {
console.log('"undeclaredVariable" is undefined')
}Run Code Online (Sandbox Code Playgroud)
我不想使用 try catch 块,因为我希望能够基于此分配另一个常量。我想要一个这样的解决方案:const isVariableDeclared = variable === undeclared,除非undeclared在 javascript 中不存在。我知道我可以将 let 与 try catch 块一起使用,但我正在寻找更优雅的东西。
我希望能够在 javascript 中生成以下数组(或类似的数组):
[
52, // random number 0-100
53, // random +1 or -1
54, // random +1 or -1
53, // random +1 or -1
52, // random +1 or -1
53, // random +1 or -1
52, // random +1 or -1
51, // random +1 or -1
50, // random +1 or -1
51, // random +1 or -1
// etc., etc., etc.
]
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我已经尝试过这个,但我总是得到一个随机数,后跟 1 和 -1:
Array(50).fill(0).map((v, i, a) => i !== 0 …Run Code Online (Sandbox Code Playgroud)