JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript数据类型
JavaScript中有五种原始数据类型:Undefined、Null、Boolean、Number以及String。
Undefined数据类型的值只有一个:undefined。
在JavaScript中,如果函数没有声明返回值,那么会返回undefined。(后面有实例)。
如果typeof后面跟一个未定义的参数,也是返回undefined。
Null数据类型的值只有一个:null。
null与undefined的关系:undefined实际上是从null派生出来的。
所以:
alert(undefined == null);
弹框显示true。
Boolean数据类型的值有两个:true和false。
var s = false; //声明了一个布尔值false
字符串String类型,用单引号或者双引号都可以。
JavaScript中没有char数据类型。
typeof运算符
typeof是一元运算符,后跟变量的名称,用于获取变量的数据类型,其返回值有5个:undefined、boolean、number、string以及object。
var s = "hello"; // s是原始类型
alert(typeof s) //输出:string
另一种方式:
var s = new String("hello"); //s是对象类型
alert(typeof s) //输出:object
对象类型的基类是Object(很像Java),所以typeof判断出是对象类型之后不再具体说明其到底是何种对象类型。
var s = false;
alert(typeof s); //输出boolean var s = 3;
alert(typeof s) //输出number
函数无返回值的情况
在JavaScript中,如果函数没有声明返回值,那么会返回undefined。
function add()
{
return;//或者干脆不写return
}
alert(add()); //弹框显示undefined
强制类型转换
强制类型转换:在JavaScript中有3种强制类型转换:
Boolean(value),Number(value),String(value)。
比较常规的:
var s = Number(3);
alert(s);
转换成布尔值:
var s = Boolean("hello");
alert(s); //显示true
var s = String("hello"); //注意此处没有关键字new,表示强制类型转换
alert(typeof s);//输出string
//如果加上new则会输出object
注意:强制类型转换前面是没有new这个关键字的。
对象的属性
在JavaScript中,所有对象都是从Object对象继承过来的。
Object中的属性是不可枚举的(propertyIsEnumerable返回false),因此无法
通过for…in语句得到其中的属性。
var object = new Object();
for(var v in object)
{
alert(v);
}
//没有弹框,因为没有可枚举的属性 alert(object.propertyIsEnumerable("prototype"));//返回false
动态管理属性
在JavaScript中,可以动态添加对象的属性,也可以动态删除对象的属性。
var object = new Object();
alert(object.username); //undefined //添加属性
object["username"] = "shengsiyuan";
//object.username= "shengsiyuan"; //两种方式都可以动态添加属性username
alert(object.username); //显示定义的name属性 //删除属性
delete object.username; // username属性已经从object对象中删除
alert(object.username);//undefined
定义对象的另一种方式:
以属性来定义对象:
// 在JavaScript中定义对象的最常见的方式
var object = {username: "zhangsan", password: 123};
alert(object.username);
alert(object.password);
参考资料
圣思园张龙老师Java Web视频教程。
W3School JavaScript教程:http://www.w3school.com.cn/js/index.asp
英文版:http://www.w3schools.com/js/default.asp
JavaScript学习10 JS数据类型、强制类型转换和对象属性的更多相关文章
- JavaScript学习笔记——2.数据类型与类型转换
数据类型 JS中一共分成六种数据类型 1- String 字符串 2- Number 数值 3- Boolean 布尔值 4- Null 空值 5- Undefined 未定义 6- Object 对 ...
- JavaScript学习12 JS中定义对象的几种方式
JavaScript学习12 JS中定义对象的几种方式 JavaScript中没有类的概念,只有对象. 在JavaScript中定义对象可以采用以下几种方式: 1.基于已有对象扩充其属性和方法 2.工 ...
- JavaScript学习06 JS事件对象
JavaScript学习06 JS事件对象 事件对象:当事件发生时,浏览器自动建立该对象,并包含该事件的类型.鼠标坐标等. 事件对象的属性:格式:event.属性. 一些说明: event代表事件的状 ...
- JavaScript学习03 JS函数
JavaScript学习03 JS函数 函数就是包裹在花括号中的代码块,前面使用了关键词function: function functionName() { 这里是要执行的代码 } 函数参数 函数的 ...
- JS中强制类型转换
JavaScript提供了3种强制类型转换的方法 一.Boolean()方法 该方法将指定的参数转换成布尔型.Boolean(object).参数object可以是字符串对象.数值对象.DOM对象等. ...
- Javascript学习8 - 脚本化文档(Document对象)
原文:Javascript学习8 - 脚本化文档(Document对象) 每个Web浏览器窗口(或帧)显示一个HTML文档,表示这个窗口的Window对象有一个document属性,它引用了一个Doc ...
- javascript学习3、数据类型、数据类型转换、运算符
数据类型包括:基本数据类型和引用数据类型 基本数据类型指的是简单的数据段,引用数据类型指的是有多个值构成的对象. 当我们把变量赋值给一个变量时,解析器首先要确认的就是这个值是基本类型值还是引用类型值 ...
- JavaScript学习 - 基础(二) - 基础类型/类型转换
基础类型 - 数字类型(Number) 1.最基本的数据类型 2.不区分整型数值和浮点型数值 3.所有数字采用64位浮点格式存储,相当于Java和C语言中double格式 4.能表示的最大值 +- 1 ...
- 【Python系统学习02】数据类型与类型转换
一.数据类型 字符串 整数 浮点数 [补充中...] 1.字符串 str 字符串:英文string,简写str. name = '小石头:' print(name,'2019', '12', '24' ...
随机推荐
- java Class对象
目录 1Class对象 普通的Class对象 泛化的Class对象 2类型转换前先做检查 instanceof 运算符的陷阱 Class.isInstance() 3反射 动态代理 1.Cla ...
- Android之Activity的生命周期
PS:写一发关于Activity的生命周期,也算是面试的重点内容. 学习内容: 1.Activity的生命周期 2.面对多种情况的时候Activity的生命周期 3.onSaveInstanceSta ...
- js基础-表单验证和提交
基础知识: 原始提交如下: <form action="/login" method="post" id="form1"> &l ...
- ASP.NET MVC必知必会知识点总结(一)
一.URL Routing 1.添加URL路由映射的一般方法(在RegisterRoutes方法中添加): //第一种(建议采用这种): routes.MapRoute( "MyRoute& ...
- Git学习笔记(四)
一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...
- 【Swift学习】Swift编程之旅---类和结构体(十三)
与其他编程语言所不同的是,Swift 并不要求你为自定义类和结构去创建独立的接口和实现文件.你所要做的是在一个单一文件中定义一个类或者结构体,系统将会自动生成面向其它代码的外部接口. 注意:通常一个类 ...
- 理解SQL Server是如何执行查询的 (1/3)
查询执行的总图: 根据总图的流程,详细说明每个部分: 1. 请求(Request) SQL Server是C/S架构的平台.与它交互的唯一方式就是发送包含数据库命令的请求.应用程序和数据库之前的通信协 ...
- ASP.NET页面事件:顺序与回传详解
当页面被提交请求第一个方法永远是构造函数.您可以在构造函数里面初始一些自定义属性或对象,不过这时候因为页面还没有被完全初始化所以多少会有些限制.特别地,您需要使用HttpContext对象.当前可以使 ...
- HTML 5 Web 存储
HTML5 提供了两种在客户端存储数据的新方法: localStorage - 没有时间限制的数据存储sessionStorage - 针对一个 session 的数据存储 html5 web sto ...
- 【Java每日一题】20161014
20161013问题解析请点击今日问题下方的"[Java每日一题]20161014"查看 package Oct2016; import java.util.Arrays; imp ...