相关疑难解决方法(0)

JavaScript中的变量范围是什么?

javascript中的变量范围是什么?它们的内部是否与函数外部相同?或者甚至重要吗?另外,如果变量是全局定义的,那么它们存储在哪里?

javascript variables scope var function

1952
推荐指数
18
解决办法
48万
查看次数

在JavaScript中的Const?何时使用它是必要的

我最近在javascript中遇到了const关键字.据我所知,它用于创建不可变变量,我已经测试过以确保它不能重新定义(在node.js中):

const x = 'const';
const x = 'not-const';

// Will give an error: 'constant 'x' has already been defined'
Run Code Online (Sandbox Code Playgroud)

我意识到它还没有在所有浏览器中标准化 - 但我只对node.js/v8的上下文感兴趣,并且我注意到当使用var关键字时,某些开发人员/项目似乎非常喜欢它达到同样的效果.

问题

何时使用const代替var

是否应该在每次声明不会重新分配的变量时使用它?

如果使用var代替const,反之亦然,它实际上是否有任何区别?

javascript const immutability node.js

337
推荐指数
8
解决办法
19万
查看次数

JavaScript中的所有falsey值

JavaScript中的值是什么'falsey',这意味着它们在表达式中评估为false if(value),value ?并且!value


关于Stack Overflow上的falsey值的目的已有一些讨论,但没有详尽的完整答案列出所有的falsey值.

我在MDN JavaScript Reference上找不到任何完整列表,我很惊讶地发现在JavaScript中查找完整,权威的虚假值列表时的最佳结果是博客文章,其中一些有明显的遗漏(例如,NaN),并且没有一个像Stack Overflow这样的格式,可以添加评论或替代答案来指出怪癖,惊喜,遗漏,错误或警告.因此,制作一个似乎是有意义的.

javascript

193
推荐指数
1
解决办法
7万
查看次数

简单的Javascript数组初始化无法在Chrome中运行

我想做一些非常简单的事 - 在Javascript中初始化一个数组.它不适用于谷歌浏览器.这是代码:

status = [];
for(i=0; i < 8; i++)
  status[i]=false;

alert(status.length); //It says 0 when it should say 8
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?

javascript arrays google-chrome

7
推荐指数
3
解决办法
2210
查看次数

javascript中名为"status"的变量的奇怪行为

<!DOCTYPE html>
<html>
<body>

<p id="demo1"></p>
<p id="demo2"></p>

<script>
var status = [true,false,true,false,true,false,true,false,true,false];
var status1 = [true,false,true,false,true,false,true,false,true,false];

document.getElementById("demo1").innerHTML = status[2];
document.getElementById("demo2").innerHTML = status1[2];
</script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

https://jsfiddle.net/vdr2r38r/

为什么不同名称的相同变量的行为不同?

javascript

5
推荐指数
1
解决办法
461
查看次数

布尔变量从javascript函数返回为字符串

为什么当我返回时,我认为是来自javascript函数的布尔变量,它在调用函数中被检测为字符串,但如果我返回一个布尔文字,则调用函数将其检测为布尔值?

所以,例如:

$( document ).ready(function(){
    $('#result').text(typeof validate());
    $('#result2').text(typeof validate2());
});

function validate(){
    status = true;
    status = false;
    return status;
}
    
function validate2(){
    return true;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Hello</p>
<div id="result"></div>
<div id="result2"></div>
Run Code Online (Sandbox Code Playgroud)

javascript

2
推荐指数
1
解决办法
168
查看次数