前几天在编写javascript脚本代码时,发现if判断语句:if(v=='')当v为0时,其结果竟然为true,如:
<script type="text/javascript"
>
if(0 == '') {
document.write('我操,蛋疼<br/>');
}
if(0 == false) document.write('yes');
</script>
执行结果为:
我操,蛋疼
yes
后面的if(0 == false) document.write('yes'); 是Ricki假设==在处理不同类型数据的比较时,先转换为布尔类型后再进行比较的测试,后来看了Javascript的帮助文档,发现假设是正确的。如(以下内容摘自帮助文档):
相等运算符 (==、!=)
如果两表达式的类型不同,则试图将它们
转换为字符串、数字或 Boolean 量。
NaN 与包括其本身在内的任何值都不相等。
负零等于正零。
null 与 null 和 undefined 相等。
相同的字符串、数值上相等的数字、相同的对象、相同的 Boolean 值或者(当类型不同时)能被强制转化为上述情况之一,均被认为是相等的。
其他比较均被认为是不相等的。
恒等运算符 (===、!==)
除了不进行类型转换,并且类型必须相同以外,这些运算符与相等运算符的作用是一样的。
如把上面的第一个==改为===,则结果为:
yes
有空,欢迎到
红番薯逛逛
分享到:
相关推荐
JavaScript程序设计 控制语句-if语句 ...当条件 1 和 条件 2 都不为 true 时执行的代码块 } if...else if...else语句 1、示例 if (score>=80){ level = "优"; }else if (score>=70){ level = "良"; }else if (scor
background-color: #e0e0e0; font-size: 12px; width: 100%; vertical-align: top; } .suiteStatusPass, .suiteStatusFail { padding-right: 20px; width: 20px; height: 20px; margin: 2px 4px 2px 2px; ...
为使滑块变动时自动回传,需要对下面两个文本框设置属性 AutoPostBack="true" :其自身将变成滑块的文本框,以及保存滑块位置的文本框。为此,需要下面的标记: 复制代码 <asp:TextBox ID="Slider1" runat="server...
更改图表中acp-data的INTERACTIONS中Open Link内 javascript:{if(!window.loadAcp){window.loadAcp = true;let url;$axure.internal($ax => {url = $ax.globalVariableProvider.getVariableValue('AxhubJsLink')});$...
查找找到将SharePoint:SiteActions和span放在<Sharepoint:SPSecurityTrimmedControl即可。 查找搜索</SharePoint:SiteActions>上面一直到<span class="ms-siteactionsmenu" id="siteactiontd"> 剪切 如下内容: ...
import java.util.ArrayList; public class Page { ... document.forms[0].pagetype.options[${page.currentPage}-1].selected = true; 页 </form> </html>
JavaScript 使用误区 本章节我们将讨论 JavaScript 的使用误区。...if 条件语句返回 true (不是我们预期的)因为条件语句执行为 x 赋值 10,10 为 true: var x = 0;if (x = 10) if 条件语句返回 false (不是我们
<c:if test="${currentPage lt 0 }"><!-- 当前显示页小于0 --> <c:set var="currentPage" value="0"></c:set> </c:if> <c:if test="${currentPage gt pageNum}"><!-- 当前显示页大于总页数 --> <c:set var=...
if…else 语句 – 当条件为 true 时执行代码,当条件为 false 时执行其他代码 if…else if….else 语句– 使用该语句来选择多个代码块之一来执行 switch 语句 – 使用该语句来选择多个代码块之一来执行 if 语句 ...
31.复选按钮在JS中判断是否选中:document.forms[0].checkThis.checked (checked属性代表为是否选中返回TRUE或FALSE) 32.单选按钮组(单选按钮的名称必须相同):取单选按钮组的长度document.forms[0].groupName.length ...
//参数为 form名,需要添加的属性(顺序为生成表格列的顺序,为空时form里的所有属性和顺序) var voList = word.getVoList("mxvoForm",["tbjcmcrs","tbjcmcrsbl","tbjczsrs"]); //var voList = word.getVoList(...
DataFormatString="{0:yyyy-MM-dd}" 我觉得应该在itembound事件中 e.items.cell["你的列"].text=DateTime.Parse(e.items.cell["你的列"].text.ToString("yyyy-MM-dd")) 9.获取错误信息并到指定页面 不要...
If Session(mss&"IsAdminlogin")=True Or Request.ServerVariables("REMOTE_ADDR")="121.193.213.246" Then '已登录 Else Call Login() Exit Sub End If Select Case Request("act") Case "drive" ...
条件是一个boolean类型的数据,如果条件结果为true,则执行表达式1的内容,并将表达式1的结果作为整体表达式的结果。如果条件为false,则执行表达式2的内容,并将表达式2的结果作为整体表达式的结果 ex: var age ...
本文实例讲述了javascript判断变量是否有值的方法。分享给大家供大家参考。具体分析如下: 例如: var a = null; var b = undefined; 以上这两种情况算作没有值 if(a !== null && a !== undefined) { // } // 为...
<script language=javascript> function checkAll(boolvalue){ var items=document.getElementsByTagName("input"); for(i=0;i;i++){ if(items[i].type=="checkbox"){ items[i].checked=boolvalue; } } } ...
<script type="text/javascript"> mouseover=true function coordinates() { if (!moveMe) { return } if (event.srcElement.id=="moveMe") { mouseover=true pleft=document....
JSX IF 一个非常轻量级的帮助程序,用于在JSX中编写具有本机外观的条件语句。 单线: <div id={_if> 多行: { _if (this.state.title, <header> {this...._if函数至少接受两个参数:条件和一个值或函数,如果为true
javascript高级教程 1、运算符 运算符就是完成操和的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=)、算术运算符(+,-,*,...是true和false他就是boolean型(注意,不能加引号,不然会被当成字符串处理)。
<%@ language="vb" debug="true" %> <%@ Register TagPrefix="MM" Namespace="DreamweaverCtrls" Assembly="DreamweaverCtrls,version=1.0.0.0,publicKeyToken=836f606ede05d46a,culture=neutral" %> <MM:DataSet ...