Javascript学习一数据类型
1、介绍js的基本数据类型
Undefined、Null、Boolean、Number、String
(1) Undefined和Undifined区别
null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN。
undefined:
(1)变量被声明了,但没有赋值时,就等于undefined。
(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。
(3)对象没有赋值的属性,该属性的值为undefined。
(4)函数没有返回值时,默认返回undefined。
null:
(1) 作为函数的参数,表示该函数的参数不是对象。
(2) 作为对象原型链的终点。
(2)数据类型之间的转换
typeof查看,返回六个字符串
number string boolean object undefined function
(3)强制转字符串
String(变量) 可以转任何数据类型
变量.toString(); 除了null undefined,其它均可
(4)强制转数字
Nunber(); 可以转任何数据类型,只有能转成功或不能转成功之分。
转成功就是数字,转不成功就是NaN
parseInt() 转整数
parseFloat() 转小数
如果转不成功,则返回NaN
(5)隐式类型转换
+ - * / % ++ --
(6)NaN
1、NaN同谁都不相等,包括它自己
2、任何涉及NaN的操作返回的都是NaN
3、typeof查看返回的是number
(7)isNaN
不喜欢数值(包括字符串的数字),但喜欢数值类型的NaN
喜欢的是非数字
2复杂数据类类
复杂、引用数据类型(object)
数据封装类对象:Object、Array、Boolean、Number 和 String
其他对象:Function、Arguments、Math、Date、RegExp、Error
获取时间
// 返回电脑操作系统的时间,时间对象,
//这个对象下面有很多的属性,包括年月日星期时分秒
var date = new Date();
var year = date.getFullYear(); // 年
var month = date.getMonth() + 1; // 月:0--11
var d = date.getDate(); // 日
var week = date.getDay(); // 星期 0--6(日一二三四五六)
var h = date.getHours(); // 时
var m = date.getMinutes(); // 分
var s = date.getSeconds(); // 秒
new操作符
(1)创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。
(2)属性和方法被加入到 this 引用的对象中。
(3)新创建的对象由 this 所引用,并且最后隐式的返回 this 。
3 全等判定:
相等,值是否相等,会发生类型转换
全等,值和类型都要相等才相等,不会发生类型转换
console.log(1 == '1'); // true
console.log(true == 1); // true
console.log(null == undefined); // true,除此之外,它们不能和其它的值进行比较 // === 全等,值和类型都要相等才相等,不会发生类型转换
console.log(1 === '1'); // false
console.log(true === 1); // false
console.log(null === undefined); // false console.log(null !== undefined); // true
console.log(null != undefined); // false
3、this对象的理解
this总是指向函数的直接调用者(而非间接调用者);
如果有new关键字,this指向new出来的那个对象;
在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window。
1 闭包:函数里面套函数,被嵌套函数就叫闭包。
闭包特点:
function init() {
var name = "Mozilla"; // name 是一个被 init 创建的局部变量
function displayName() { // displayName() 是内部函数,一个闭包
alert(name); // 使用了父函数中声明的变量
}
displayName();
}
init();
Javascript学习一数据类型的更多相关文章
- JavaScript学习笔记——数据类型强制转换和隐式转换
javascript数据类型强制转换 一.转换为数值类型 Number(参数) 把任何的类型转换为数值类型 A.如果是布尔值,false为0,true为1 B.如果是数字,转换成为本身.将无意义的后导 ...
- JavaScript学习——判断数据类型总结(转)
一.JS中的数据类型 1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) ...
- JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...
- JavaScript 引入方式 语言规范 语言基础 数据类型 常用方法 数组 if_else 比较运算符 for while 函数 函数的全局变量和局部变量 {Javascript学习}
Javascript学习 JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript ...
- JavaScript:学习笔记(2)——基本概念与数据类型
JavaScript:学习笔记(2)——基本概念与数据类型 语法 1.区分大小写.Test 和 test 是完全不同的两个变量. 2.语句最好以分号结束,也就是说不以分号结束也可以. 变量 1.JS的 ...
- JavaScript学习总结(2)——JavaScript数据类型判断
最近做项目中遇到了一些关于javascript数据类型的判断处理,上网找了一下资料,并且亲自验证了各种数据类型的判断,在此做一个总结吧! 一.JS中的数据类型 1.数值型(Number):包括整数. ...
- JavaScript学习笔记——变量和数据类型
一.javascript命名规范 1. 严格区分大小写 2. 变量的命名必须以字母或 _或 $开头,余下的部分可以是任意的字母,数字,或者是 _或者是$ 3.不能用关键字或者是保留字命名. 4.jav ...
- JavaScript学习11 数组排序实例
JavaScript学习11 数组排序实例 数组声明 关于数组对象的声明,以前说过:http://www.cnblogs.com/mengdd/p/3680649.html 数组声明的一种方式: va ...
- JavaScript学习04 对象
JavaScript学习04 对象 默认对象 日期对象Date, 格式:日期对象名称=new Date([日期参数]) 日期参数: 1.省略(最常用): 2.英文-数值格式:月 日,公元年 [时:分: ...
随机推荐
- golang相关书签
https://www.zhihu.com/question/30461290 golang资料精选汇编
- delphi提示“Undeclared identifier”TForm的缺少引用单元列表
在interface uses 添加TForms;
- git add * 提示warning: LF will be replaced by CRLF in 解决办法
在使用git的时候,每次执行 $ git add * 都会提示这样一个警告消息: 虽然说没有什么影响吧. 不过就是觉得太碍眼了, 按照这样设置就没有问题了: git config core.autoc ...
- 前台ajax请求php后台返回成功却进error方法解决
最近几天一直都在解决error问题,周末都没能好好过,悲痛万分,想逃走
- 在Linux服务器非root权限下搭建TensorFlow框架(Anaconda)
今天终于动手折腾实验室的服务器啦!由于权限原因,只能在自己的路径下安装TensorFlow. 1. 下载安装Anaconda 官网下载地址:https://www.anaconda.com/downl ...
- linux php5.6 安装Redis扩展
wget http://pecl.php.net/get/redis-4.2.0.tgz tar -zxvf redis-.tgz cd redis- /usr/local/php5./bin/php ...
- Yarn架构详解
Yarn架构介绍Yarn/MRv2最基本的想法是将原JobTracker主要的资源管理和job调度/监视功能分开作为两个单独的守护进程.有一个全局的ResourceManager(RM)和每个Appl ...
- OpenStack的容器服务体验
magnum 是用于 OpenStack 的容器服务.它有以下特点: 抽象的容器.节点.服务等 集成了用于容器技术的 Kubernetes 和 Docker 集成了多租户安全的 Keystone 继承 ...
- asp.net IHttpModule浅析
在asp.net程序中,我们除了使用系统自带的HttpModule模块,还可以自己定义一些自己的HttpModule接口模块.一个asp.net程序可以接收多个HttpModule模块. 众所周知,a ...
- saltstack高效运维
saltstack高效运维 salt介绍 saltstack是由thomas Hatch于2011年创建的一个开源项目,设计初衷是为了实现一个快速的远程执行系统. salt强大吗 系统管理员日常会 ...