how2j.cn


工具版本兼容问题
基本数据类型
undefined,Boolean,Number,String,null

关键字 简介 示例代码
undefined
声明了但未赋值
示例代码
Boolean
布尔
示例代码
Number
数字
示例代码
String
字符串
示例代码
var
动态类型
示例代码
typeof
变量类型判断
示例代码
null
空对象/对象不存在
示例代码
示例 1 : 声明了但未赋值   
示例 2 : 布尔   
示例 3 : 数字   
示例 4 : 字符串   
示例 5 : 动态类型   
示例 6 : 变量类型判断   
示例 7 : 空对象/对象不存在   

示例 1 :

声明了但未赋值

当一个变量被声明了,却没有赋值的时候,叫做 undefined
运行效果
<script> var x; //声明了变量x,但是没有赋值 document.write('声明了,但是没有赋值的变量 x: '+x); </script>
<script>
  var x; //声明了变量x,但是没有赋值
  document.write('声明了,但是没有赋值的变量 x: '+x);
</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 2 :

布尔

Boolean变量有两种值,分别是true或者false
运行效果
<script> var x=true; var y=false; document.write("布尔值:"+x); document.write("<br>"); document.write("布尔值:"+y); </script>
<script>
  var x=true;
  var y=false;
  document.write("布尔值:"+x);
  document.write("<br>");
  document.write("布尔值:"+y);
</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 3 :

数字

javascript中的Number可以表示十进制,八进制,十六进制整数,浮点数,科学记数法
运行效果
<script> var a=10; //十进制 var b=012;//第一位是0,表示八进制 var c=0xA;//0x开头表示十六进制 var d=3.14;//有小数点表示浮点数 var e=3.14e2;//使用e的幂表示科学计数法 document.write("十进制 10 的值: "+a); document.write("<br>"); document.write("八进制 012 的值: "+b); document.write("<br>"); document.write("十六进制 0xA 的值: "+c); document.write("<br>"); document.write("浮点数 3.14 的值: "+d); document.write("<br>"); document.write("科学记数法 3.14e2 的值: "+e); document.write("<br>"); </script>
<script>
  var a=10; //十进制
  var b=012;//第一位是0,表示八进制
  var c=0xA;//0x开头表示十六进制
  var d=3.14;//有小数点表示浮点数
  var e=3.14e2;//使用e的幂表示科学计数法
  document.write("十进制 10 的值: "+a);
  document.write("<br>");
  document.write("八进制 012 的值: "+b);
  document.write("<br>");
  document.write("十六进制 0xA 的值: "+c);
  document.write("<br>");
  document.write("浮点数 3.14 的值: "+d);
  document.write("<br>");
  document.write("科学记数法 3.14e2 的值: "+e);
  document.write("<br>");
</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 4 :

字符串

与java不同的是,javascript中没有字符的概念,只有字符串,所以单引号和双引号,都用来表示字符串。
运行效果
<script> var x='hello '; //单引号 var y="javascript"; //双引号 document.write("单引号的字符串:"+x); document.write("<br>"); document.write("双引号的字符串:"+y); </script>
<script>
  var x='hello '; //单引号
  var y="javascript"; //双引号
  document.write("单引号的字符串:"+x);
  document.write("<br>");
  document.write("双引号的字符串:"+y);
</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 5 :

动态类型

变量的类型是动态的,当值是整数的时候,就是Number类型,当值是字符串的时候,就是String类型
运行效果
<script> var x=10; //Number类型 document.write("此时 x的值是 "+x+" 类型是数字"); document.write("<br>"); x = "hello javascript"; //String类型 document.write("此时 x的值是 "+x+" 类型是字符串"); </script>
<script>
  var x=10; //Number类型
  document.write("此时 x的值是 "+x+" 类型是数字");
  document.write("<br>");
  x = "hello javascript"; //String类型
  document.write("此时 x的值是 "+x+" 类型是字符串");
</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 6 :

变量类型判断

使用typeof来进行判断数据类型

正是因为变量是动态类型的,所以无法确定当前到底是哪种类型,这个时候,就可以使用typeof来进行判断
运行效果
<script> var x; document.write('声明了但是未赋值的时候,类型是: '+typeof x); document.write("<br>"); x=5; document.write('赋值为5之后,类型是: '+typeof x); document.write("<br>"); x=5.1; document.write('赋值为5.1之后,类型是: '+typeof x); document.write("<br>"); x=true; document.write('赋值为true之后,类型是: '+typeof x); document.write("<br>"); x="hello"; document.write('赋值为hello之后,类型是: '+typeof x); </script>
<script>
  var x; 
  document.write('声明了但是未赋值的时候,类型是: '+typeof x);
  document.write("<br>");
  x=5; 
  document.write('赋值为5之后,类型是: '+typeof x);
  document.write("<br>");
  x=5.1; 
  document.write('赋值为5.1之后,类型是: '+typeof x);
  document.write("<br>");
  x=true; 
  document.write('赋值为true之后,类型是: '+typeof x);
  document.write("<br>");
  x="hello"; 
  document.write('赋值为hello之后,类型是: '+typeof x);

</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 7 :

空对象/对象不存在

null表示一个对象不存在,因为本章节讲的都是基本类型,而null是和对象相关的,所以会放在javascript中的对象中进行讲解


HOW2J公众号,关注后实时获知布最新的教程和优惠活动,谢谢。


问答区域    
2018-11-26 是不是只能用var声明变量
转手的情怀
是不是只能用var声明变量,不可以像Java中 String str; 声明








答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2018-11-26 只能用var声明变量么
转手的情怀
是不是只能用var声明变量,不可以像Java中 String str = "hello"; 声明








答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2017-06-07 请问每种类型占的字节数是多少,是都分配相同的字节数吗?
2017-03-31 代码异常
2017-03-16 单引号和双引号的字符串有区别吗?
2016-12-19 勘误




提问之前请登陆
关于 前端部分-JavaScript-基本数据类型 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 902680467
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: http://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图