Javascript中的五种数据类型详解
作者:bea
Undefined 未定义。只有一个值undefined Null 只有一个值,null Boolean 在javascript中,只要逻辑表达式不返回undefined不返回null,就都是真的。 代码如下: if(3) true if(null) false if(undefined) false Number String javascript中不存在char类型。 字符串定义可以用单引号,也可以用双引号。 代码如下: <html>
Undefined
未定义。只有一个值undefined
Null
只有一个值,null
Boolean 在javascript中,只要逻辑表达式不返回undefined不返回null,就都是真的。
代码如下:
if(3) true
if(null) false
if(undefined) false
Number
String
javascript中不存在char类型。
字符串定义可以用单引号,也可以用双引号。
代码如下:
<html>
<head>
<script type="text/javascript">
//var s="hello";
//alert(typeof s);//s是字符串类型
var s=new String("hello");//s 是对象类型 alert(typeof s); </script> </head> <body> </body> </html>
typeof 是一个一元运算符,用来获得变量的数据类型
其返回值有五个
undefined,boolean,number,string以及object.
其中前面四个都好理解。而最后一个object是让程序员无从判断的,只笼统的返回了object
在javascript中,如果函数没有声明返回值,那么会默认返回undefined。 如果声明了返回值,那么实际返回什么就是什么。
undefined从null派生,所以比较时返回true alert(undefined==null);//true
强制类型转换 在javascript中,有三种强制类型转换:
Boolean(value)
Number(value)
String(value)
代码如下:
<html>
<head>
<script type="text/javascript">
var num=Number(3);
alert(num);
var s="hello";
alert(Boolean(s));
var s1=String("hello");
alert(typeof s1);
var obj=new String("hello");//这不是强制类型转换!
alert(typeof obj);
</script>
</head>
<body>
</body>
</html>
在javascript中,所有的对象都继承自Object对象。
用new 的方式生成。
js中有些方法是可以枚举出来的,有些是不行的。
用js内置方法可以判断,是否可以枚举出来。
代码如下:
<html>
<head>
<script type="text/javascript">
var object=new Object();
for(var v in object){
console.log(v);
}
alert(object.propertyIsEnumerable("prototype"));//返回了false,表示没有可以枚举的属性,也意味着子对象相应的属性也是不可以枚举的
</script>
</head>
<body>
</body>
</html>
枚举自定义类型的属性
代码如下:
<html>
<head>
<script type="text/javascript">
var member=function(name,age){
this.name=name;
this.age=age;
}
var m=new member("liudh",50);
for(var v in m){
console.log(v);
//name
//age
}
alert(m.propertyIsEnumerable("prototype"));//false
//for(var v in window){
// console.log(v);
//}
</script>
</head>
<body>
</body>
</html>
有用 | 无用
未定义。只有一个值undefined
Null
只有一个值,null
Boolean 在javascript中,只要逻辑表达式不返回undefined不返回null,就都是真的。
代码如下:
if(3) true
if(null) false
if(undefined) false
Number
String
javascript中不存在char类型。
字符串定义可以用单引号,也可以用双引号。
代码如下:
<html>
<head>
<script type="text/javascript">
//var s="hello";
//alert(typeof s);//s是字符串类型
var s=new String("hello");//s 是对象类型 alert(typeof s); </script> </head> <body> </body> </html>
typeof 是一个一元运算符,用来获得变量的数据类型
其返回值有五个
undefined,boolean,number,string以及object.
其中前面四个都好理解。而最后一个object是让程序员无从判断的,只笼统的返回了object
在javascript中,如果函数没有声明返回值,那么会默认返回undefined。 如果声明了返回值,那么实际返回什么就是什么。
undefined从null派生,所以比较时返回true alert(undefined==null);//true
强制类型转换 在javascript中,有三种强制类型转换:
Boolean(value)
Number(value)
String(value)
代码如下:
<html>
<head>
<script type="text/javascript">
var num=Number(3);
alert(num);
var s="hello";
alert(Boolean(s));
var s1=String("hello");
alert(typeof s1);
var obj=new String("hello");//这不是强制类型转换!
alert(typeof obj);
</script>
</head>
<body>
</body>
</html>
在javascript中,所有的对象都继承自Object对象。
用new 的方式生成。
js中有些方法是可以枚举出来的,有些是不行的。
用js内置方法可以判断,是否可以枚举出来。
代码如下:
<html>
<head>
<script type="text/javascript">
var object=new Object();
for(var v in object){
console.log(v);
}
alert(object.propertyIsEnumerable("prototype"));//返回了false,表示没有可以枚举的属性,也意味着子对象相应的属性也是不可以枚举的
</script>
</head>
<body>
</body>
</html>
枚举自定义类型的属性
代码如下:
<html>
<head>
<script type="text/javascript">
var member=function(name,age){
this.name=name;
this.age=age;
}
var m=new member("liudh",50);
for(var v in m){
console.log(v);
//name
//age
}
alert(m.propertyIsEnumerable("prototype"));//false
//for(var v in window){
// console.log(v);
//}
</script>
</head>
<body>
</body>
</html>
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- jQuery.holdReady()方法用法实例
- jQuery中的jQuery()方法用法分析
- 基于javascript实现的搜索时自动提示功能
- 基于jquery实现发送文章到手机的代码
- jQuery中ajax的post()方法用法实例
- jQuery中ajax的get()方法用法实例
- 分享2个jQuery插件--jquery.fileupload与artdialog
- 使用Plupload实现直接上传附件至七牛云存储
- 基于javascript的COOkie的操作实现只能点一次
- jQuery中ajax的load()方法用法实例
- jquery中checkbox全选失效的解决方法
- jQuery中change事件用法实例
- jQuery中mouseover事件用法实例
- javascript实现禁止右键和F12查看源代码
- Angularjs 基础入门
- jQuery 实现侧边浮动导航菜单效果
- Javascript的闭包详解
- jQuery中focus事件用法实例
- 生成二维码方法汇总