JS与JAVA数据类型的区别

JavaScript与Java数据类型的区别

 

今天开始正式认真学习js,虽然在平常j2ee开发中也经常用到JS但并不精通,这次随笔记下js与Java数据类型的不同之处

Number

与java不同,js作为弱类型语言即使在浮点数与整数上也未作明确区分,Number值可以是var a = 5 or  5.5,以及其他进制如八进制 var a  = 070.甚至是科学计数 var a = 3.12E3 .

var a=1;
var a=1.2;
var a=0xA;
var a=3.14E7;

以及一些特殊值        

NaN(Not a Number);

Infinity:无法计算的值如

var a = 1/0;

String

相比较java没有严格区分单引号或双引号

var a = 'hello';
var a = "hello";

Boolean

与java没有任何区别

Null

它与java中Null的概念类似,但在js弱类型语言中是作为类型存在的。

Undefined

对于定义却未辅助,或者干脆未定义的变量作为Undefined存在,值是小写的undefined。

(以上为基础类型数据)

Object

js的Object表现形式其实更像是在java中Value可为function的特殊Map,其中存放了一组无序的名值对集合,Object是引用类型。

复制代码
 var ob={
    name:'张三',
    age:32,
    sleep:function(){
        console.log('ZZZZZ~');   
    }
}
复制代码

 作为弱语言的特性,js变量类型可以随时转换,如果需要跟踪js运行过程中的变量类型,可以使用type of.

原文地址:https://www.cnblogs.com/wangli-66/p/5294960.html