js中各种类型的变量在if条件中是true还是false_javascript技巧

js的弱类型让人感觉很多东西都比较迷惑,例如变量在if条件中到底是true还是false,如果在强类型语言中将一个非boolean类型的变量放在if条件中时,是需要进行类型转换的,但是js不需要,下面来进行测试,测试常见的变量类型在if条件中的表现

!function test1(){ 

<span style="color:#ff0000;">var a,b=-1,c= 1,d= 0,e=null,f=undefined,g='',h="";</span>
if(!a){
console.log('a='+a)
}
if(!b){
console.log("b="+b)
}
if(!c){
console.log("c="+c)
}
if(!d){
console.log("d="+d)
}
if(!e){
console.log("e="+e)
}
if(!f){
console.log("f="+f)
}
if(!g){
console.log("g="+g)
}
if(!h){
console.log("h="+h)
} 

}() 

设定了各种变量类型,分别放入if条件中

执行结果
a=undefined
d=0
e=null
f=undefined
g=
h=
i=false

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索变量
, true
, false
if条件
true false、js true false 判断、true or false、true false 0 1、python true false,以便于您获取更多的相关知识。

时间: 2024-09-15 10:10:28

js中各种类型的变量在if条件中是true还是false_javascript技巧的相关文章

js 判断浏览器类型 去全角、半角空格 自动关闭当前窗口_javascript技巧

// 判断浏览器类型 function GetIEType() { var Sys = {}; var nvg = navigator.userAgent.toLowerCase(); var rslt; if (window.ActiveXObject) { Sys.ie = nvg.match(/msie ([\d.]+)/)[1]; } (rslt = nvg.match(/firefox\/([\d.]+)/)) ? Sys.firefox = rslt[1] : (rslt = nvg

java中基本类型之间的转换

问题描述 java中基本类型之间的转换,笔试中常见的考题及答案,亲们,有能力的就帮忙解答下呗!(额的基础不好呀!) 解决方案 解决方案二:主要是3种,分别如下: 1.字符串和基础数据类型的互相转换 2.基础数据类型和其相对应的包装类的互相转换 3.字符串和基础数据类型的包装类的互相转换  1. (1)字符串转换成为基础数据类型 String s = "200";  int i = Integer.parseInt("s"); 或者 int si2 = new Int

求教:js对象中的函数 访问变量的问题

问题描述 求教:js对象中的函数 访问变量的问题 name = "global"; var obj = { name:"obj", fun:function(){ alert(name); } }; obj.fun(); 结果是global,我觉得应该是obj才对,求解答 解决方案 备忘:Js函数修改及访问对象内变量.按照名称访问变量.属性.对象或影片剪辑.eval 函数关于空指针类型的类变量的成员函数访问的问题 解决方案二: fun:function(){ ale

无需指定成员变量-VB2013中定义类型定义问题

问题描述 VB2013中定义类型定义问题 如何在VB2013中定义不需要指定成员变量就可以直接赋值的类型,例如 Dim Num as Integer Num = 100 在结构中如何具体实现 Friend Structure Num1 具体代码如何写End Structure 在自定义代码中具体写法: Dim Num as Num1Num = 100 谢谢了

javascript-请问js中那么多变量,变量名老是记不住怎么办?有没有诀窍?

问题描述 请问js中那么多变量,变量名老是记不住怎么办?有没有诀窍? 请问js中那么多变量,变量名老是记不住怎么办?有没有诀窍? 解决方案 js常用关键字就几个,不难记:http://www.itxueyuan.org/view/6627.html dom对象常用的方法也没几个,特殊的百度下就好. 主要是html对象属性要掌握的比较多,特别如果你要搞前端ui,css也要掌握 多练习使用就会了,这种急不来的..有空可以多逛下csdn论坛web开发的看看别人碰到的问题,自己看解决办法,或者百度下看下

JSP页面中有一个JSP脚本,我想把JS中的一个var变量放到session里该怎么做?

问题描述 JSP页面中有一个JSP脚本,我想把JS中的一个var变量放到session里该怎么做? 如题: var s="sdd"; <% session.setAttribute("msg",s);%> 这个代码如何把s放到这个session中?? 解决方案 服务器端无法直接使用客户端内容,用提交到服务器才行,用表单或者ajax来提交s的值 http://www.w3school.com.cn/jquery/ajax_ajax.asp 解决方案二: h

CString remove 中的参数怎么用一个cstring类型的变量

问题描述 CString remove 中的参数怎么用一个cstring类型的变量 假设 CString a ,b; 我想在a中删除含有b,remove的参数设置为b,怎么使用,求大神指导阿! 解决方案 CString str1 = "abcd"; CString str2 = "abcdefg"; str1 = str2.Trim(str1);

linux中shell脚本之变量类型、算数运算符、条件测试

一.bash中的变量类型 本地变量:仅对当前shell有效,对其子shell无效 变量赋值:name=value name=$user name=`Command` ,name=$(Command):这里需要注意的是" 和 $()的意义是不同的. 从下图可以总结如下:如果将命令的执行结果赋值给一个参数时,且包含多对反引号嵌套的时候,最好外层用$() #!/bin/bash # Sum=$(echo `seq $1 $2` | tr " " "+" | bc

JScript中值类型的封箱与拆箱

js|jscript JScript中对象的expando属性是对Object,Array等引用类型增加成员的一种重要手段,但这种手段在对值类型时就不行了,比如var str = "string1";str.method1 = function(){//do something}; str.method1();//这里将出错,错误信息(我忘记了)是说str不存在该方法 这样的语句就会运行不了,而在C#编程中值类型存在装箱与拆箱操作来将其转换为引用类型,对此,JScript中也存在值类型