最近我看到一个声明在互联网上使用javascript工作,我想知道javascript中单个等号(=)的含义是什么,因为我主要在if语句中使用.
它是一个比较函数,包括双等号(==)
if(i = 1) {
alert(i);
}
Run Code Online (Sandbox Code Playgroud)
这工作,我想知道当if语句被赋值给变量i的1时会发生什么,并检查i的值是否相同:
i = 1
if(i) {
alert(i)
}
Run Code Online (Sandbox Code Playgroud)
但我很快意识到值变量的赋值需要有关键字var,所以我将代码更改为:
if(var i = 1) {
alert(i);
}
Run Code Online (Sandbox Code Playgroud)
这次代码不起作用.为什么?
分析的第一部分当然是正确的.
现在,有趣的部分可能是你的最后一个代码if (var ...) {不起作用的原因.
它不起作用,因为
1)
var something
Run Code Online (Sandbox Code Playgroud)
是一种陈述,而不是一种表达.
2)这是ECMAScript如何定义if语句:
IfStatement:
if(Expression)Statement else Statement
if(Expression)Statement
您必须在if子句中放置表达式,而不是语句.
| 归档时间: |
|
| 查看次数: |
6056 次 |
| 最近记录: |