js02 变量数据类型
变量
JavaScript 是一种弱类型的脚本语言
var c = 3;即变量的声明(变量使用之前必须加var声明,编程规范)
变量的命名规则!
1.变量命名必须以字母或是下标符号”_”或者”$”为开头。
2.变量名长度不能超过255个字符。
3.变量名中不允许使用空格。
4.不用使用脚本语言中保留的关键字及保留符号作为变量名。
5.变量名区分大小写。(javascript是区分大小写的语言)
全局变量
在方法外部声明的变量
方法内部,没有加var关键字声明的变量
局部变量
方法内部,使用var声明的变量,出了方法就不行了 ECMAScript中,数据类型也分为基本类型和引用类型两大类.
基本数据类型:Number、Boolean、String、Undefined、Null
Number:整数和小数(最高精度17位小数)、NaN、Infinity, -Infinity (正负无穷)
注意:
1.除10进制外,还可通过8进制和16进制的字面值来表示,如 070 表示56、0xA表示10.
2.小数为浮点类型,if(a+b == 0.3) //不要做这样的测试,因为 浮点数值最高精度是17位,而是0.300000000000000004.
Undefined:表示变量声明但未赋值.
Null:表示一个空的对象引用(也就是赋值为null)
引用类型:Object类型 (比如对象、数组、RegExp、Date...)
Typeof 操作符
基本类型和引用类型的值
基本类型是按照值访问的,因为可以操作保存在变量中的实际值
引用类型则是按地址去访问的
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type=text/javascript charset=utf-8>
//关于全局变量和局部变量的简单说明
var a = 3;//number(代表int,float,double),方法外部var是全局变量
//变量一共有两种: 全局变量 局部变量
function test(){
var a = 2 ; //方法内部var局部变量
var b = 2 ; //方法内部var局部变量
c = 5 ; //全局变量,不加修饰符的变量用的少
alert(a); //2
}
test();//当成函数看,基础部分都当成函数看,
alert(c);//5,test()方法要先执行否则undefined
alert(b);//undefined //javascript是弱类型变量的脚本语言 ,根据赋值决定变量的类型
// Number类型 整数和小数
var a1 = 10 ;
var a2 = 10.5 ;
var a3 = NaN; //not a number
var a4 = 1/0 ; //正无穷
var a5 = 070; //8进制 和16进制(0xA)
alert(a4);//Infinity正无穷
alert(a5);//56
var a6 = 0.1 ;
var a7 = 0.2 ;
if(a6+ a7 == 0.3){//a6+a7 = 0.30000000000000004
alert('等于0.3');
} else {
alert('不等于0.3');//走这里
} var a8 = parseInt("aaabbcc"); //不是一个数
alert(a8);//NaN,转换不了数字,就说not a number
var a9 = parseInt("12bbcc");
alert(a9);//12 //undefined 数据类型 他的值就是undefined 表示变量声明了,但是没有被赋值
var b1 ;
alert(b1);//undefined //Null 空值
var b2 = null ;
alert(b2);//null //String ,js里面单引号双引号不区分
var str1 = "我是字符串1";
var str2 = '我是字符串2'; // Boolean
var flag1 = false ;
var flag2 = true ; // 引用数据类型
var arr = [1,2,3]; //数组类型
var dates = new Date(); //日期类型
var obj = {}; //空对象 // typeof 操作符 用来判断数据类型的
var a = 10 ;
var b = 10.3 ;
var c = true ;
var d = 'abcd';
var e = new Date();//object
var f = NaN ;//number,
var g = [1,2,3];//object
var h = undefined ; //undefined类型
var i = null; //object类型,表示一个空对象的引用{}
alert(typeof i);
</script>
</head>
<body>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type=text/javascript charset=utf-8 >
var a1 = 10 ;
var a2 = 10.0 ;
if(a1 == a2){
alert('相等');//走这里
}
if(a1 === a2){//都是number类型
alert('222222');//走这里
}
//js数据自动转换的机制
var a = "1" ; //非空字符串是true
var b = true ; //boolean
// == 表示 可以经过自动转换 转成相同的类型再比较数值
// === 表示 可以经过自动转换 先比较值, 再比较数据类型
if(a == b){
alert('相等');//走这里
} else {
alert('不等');
}
if(a === b){
alert('相等');
} else {
alert('不等');//走这里
} //三目运算符:
var c = 10/2>4?5:3;
alert(c);//5 //关于for循环的特点:
for(var i =0 ;i <5 ; i++){//用var不用int,
alert(i);
}
</script>
</head>
<body>
</body>
</html>
js02 变量数据类型的更多相关文章
- JAVA 变量 数据类型 运算符 知识小结
---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...
- dos命令-环境变量-数据类型-命名规范
JAVA第一天笔记--dos命令-环境变量-数据类型-命名规范 1.能够阐述JDK和JRE之间区别 JDK(Java Development Kit)是提供给开发人员使用的JAVA开发工具包(java ...
- Go-获取变量数据类型
package main import ( "fmt" "reflect" //这个包里的TypeOf方法获取变量数据类型 ) func main(){ b : ...
- Java1变量数据类型和运算符
day02_变量数据类型和运算符 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class jh_01_数据类型说明 { public ...
- Swift学习--常量.变量.数据类型的使用(一)
一.Swift中的常量和变量 /* Swift 中定义常量和变量用let/var let 代表定义一个常量 var 代表定义一个变量 Swift 中代表定义常量和变量不需要写数据类型,编译器辉根据我们 ...
- 变量-数据类型-对象-如何编写python脚本
标识符的命名规则变量是标识符的例子. 标识符 是用来标识 某样东西 的名字.在命名标识符的时候,你要遵循这些规则:标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线(‘ _ ’).标识 ...
- Day01_变量,数据类型_程序交互_流程控制
python执行的两种方式: 1,交互的方式: 优点:可以及时调试程序,调试方法 缺点: 无法永久保存代码 2,保存在文件中执行 优点:可以永久保存代码,在执行的时候调用 缺点:不能即时调试代 ...
- Java历程-初学篇 Day02变量,数据类型和运算符
一,数据类型 1,基础数据类型 整型 byte short int long 浮点型 float double 字符型 char 布尔类型 boolean 2,引用类型 String 字符串型 二,变 ...
- JavaScript判断变量数据类型
一.JS中的数据类型 1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) ...
随机推荐
- eclipse调试(debug)弹出错误
原创:http://www.cnblogs.com/lanhj/p/3874426.html 警告信息: Cannot connect to VM com.sun.jdi.connect.Transp ...
- C++归并算法
#include <iostream> using namespace std; void DealWhat(int ar[],int start,int end,int b[]) { i ...
- svn 的使用(二)
这篇主要介绍下 svn 钩子的使用,svn 的安装以及配置等能够查看svn 的使用(一) 我们能够在svn创建的仓库目录下看到 hooks 目录. 这里面就存放这个各种svn操作同一时候会运行的脚本文 ...
- Linux查看当前正在执行的进程
Linux查看当前正在执行的进程 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ ps PID TTY TIME CMD 2576 pts/0 00:00:00 ...
- vue4 属性 class style
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- poj--1237--Drainage Ditches(最大流)
Drainage Ditches Time Limit: 1000MS Memory Limit: 10000KB 64bit IO Format: %I64d & %I64u Sub ...
- How Blink works
How Blink works Author: haraken@ Last update: 2018 Aug 14 Status: PUBLIC Working on Blink is not eas ...
- [Chromium文档转载,第003章]Proposal: Mojo Synchronous Methods
Proposal: Mojo Synchronous Methods yzshen@chromium.org 02/02/2016 Overview Currently there are quite ...
- 【Uva 10934】Dropping water balloons
[Link]: [Description] 等价题意: 某人在1..n内选一个数x; 然后让你去猜; 你可以问他是不是在哪个范围里; 每次会告诉你YES或者NO; 问你在最坏的情况下猜出答案需要猜多少 ...
- 错误:created a ThreadLocal with key of type ……but failed to remove it when the web application was stopped. This is very likely to create a memory leak.
tomcat reload显示错误:SEVERE: The web application [/Interceptor] created a ThreadLocal with key of type ...