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); //输出booleanvar 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学习(六十六)—字符串对象常用的属性和方法总结以及数组元素的排序问题
JavaScript学习(六十六)-字符串对象常用的属性和方法总结以及数组元素的排序问题 学习内容 一.数组去重问题 二.二维数组的定义 三.二维数组的元素操作 四.二维数组的遍历 五.关联数组 六. ...
- JavaScript学习(四十八)—原型对象的增删改查
JavaScript学习(四十八)-原型对象的增删改查 一.构造方法与原型对象的图解 二.型对象的增删改查 (一).什么是原型 每个函数都会有一个属性--prototype属性,这个属性都会有一个对象 ...
- javascript原生事件句柄、BOM、DOM对象属性方法总结
javascript原生事件句柄.BOM.DOM对象属性方法总结 JS事件句柄 事件句柄 类型 说明 onabort 事件句柄 图像加载被中断 onblur 事件句柄 元素失去焦点 onfocus 事 ...
- js两种方法删除对象属性
js 两种方法删除对象属性 delete 语法 delete 对象.属性名 示例 delete.obj.property1 不过据说很慢,不如下面的方法. Reflect.deleteProperty ...
- python123数字形式转换_【Python系统学习02】数据类型与类型转换
数据类型与类型转换 一.数据类型 字符串 整数 浮点数 [补充中...] 1.字符串 str 字符串:英文string,简写str. name = '小石头:' print(name,'2019', ...
- js数据类型强制转换--转换为String
强制类型转换 -指的是将一个数据类型转换为其他数据类型 -类型转换主要是指,将其他的数据类型,转换为 String Number Boolean 将其他数据转换为S ...
- javascript笔记整理(数据类型强制/隐式转换 )
A.数据类型强制转换 1.转换为数值类型 Number(参数) 把任何的类型转换为数值类型 A.如果是布尔值,false为0,true为1 var a=false;alert(Number(a)); ...
- JavaScript学习笔记——JS基础0
JavaScript的起源: JavaScript诞生于1995年,它的出现主要是用于处理网页中的前端验证.所谓的前端验证,就是指检查用户输入的内容是否符合一定的规则.比如:用户名的长度,密码的长度, ...
- c语言字符串强制类型转换,C语言学习九 —头文件强制类型转换错误处理
预处理器 C 预处理器不是编译器的组成部分,但是它是编译过程中一个单独的步骤.简言之,C 预处理器只不过是一个文本替换工具而已,它们会指示编译器在实际编译之前完成所需的预处理.我们将把 C 预处理器( ...
最新文章
- [转]android selector 背景选择器
- 致北漂——你来北京不是为了配合出演苦情戏
- Nmon 性能:分析 AIX 和 Linux 性能的免费工具
- MATLAB字符串转换函数
- 得到选择框句柄 怎么操作_电脑版微信怎么多开?最简单的三种电脑版微信多开教程...
- 山东师范大学志愿推荐系统邀请码_快看点邀请码填写HGC1QK快看点邀请码填写HGC1QK快看点邀请码大家千万不要乱填写哦...
- redis主从配置及无法连接处理
- tar在linux编译为exe,将Linux代码移植到Windows的简单方法 1
- 如何在多个SQL Server上运行备份
- python如何在列表中查找元素位置_查找元素在list中的位置以及折半查询
- Windows/Linux/Mac OS下IntelliJ IDEA快捷键中文大全(本人翻译自官方ReferenceCard.pdf)(PDF典藏版)
- 芭蕉树上第十七根芭蕉-- 隐式转换
- 苹果手机突然闪退的7个原因及修复方法
- 戴尔服务器bios进不去系统,戴尔电脑进不了系统和BIOS
- 开发模式和软件系统开发
- js 数组扁平化和树之间相互转换
- RuntimeTransformGizmo:位移、旋转、缩放插件
- Gregorian Calendar ------ 有趣的日历
- 跨利润中心外协业务生成利润中心结算凭证
- 【附源码】计算机毕业设计SSM天气预报查询管理系统
热门文章
- 视频抽帧并存图 python_使用Python实现跳帧截取视频帧
- c语言答案知码,C语言笔试习题集答案和解析.doc
- 音乐u盘排序软件_传输数据快速的各种U盘系列 定制U盘
- 基于python的随机森林回归实现_python实现随机森林
- matlab 概率论,matlab.概率论.doc
- 大数据分析,利用向外扩展技术深入挖掘商业价值
- pythonista安装tkinter_Python又把GUI界面攻下了,今天就告诉你怎么玩
- python定义变量类型列子_Python系列课程-变量类型
- 决策树(五)--OpenCV决策树
- 敏捷开发之团队级经验分享