变量的声明和赋值
什么是变量?
解释:可以变化的量
-
变量是用于存储信息的容器【内存空间】 变量是一段命名的存储空间 变量是在程序运行过程中值允许改变变量的值 变量是由变量名,变量值,和变量类型组成
变量命名规则
-
第一个字符必须为字母,_或$,其后的字符还可以是数字 严格区分大小写,要有一定的含义 建议使用小驼峰规则来命名变量。redApple 不能使用关键词,保留字作为变量名
变量的命名和赋值
-
var 变量名
变量名=值
-
var 变量名=值
-
变量名=值
-
var 变量1=值1,变量2=值2,变量3=值3
注意:
-
变量名是浏览器关闭后才释放在,在没关闭之前随时使用
-
重新声明的变量,不会丢失原始值,除非重新赋值
-
换行是语句的结束,最好结束时都加上 “ ; ”
-
变量名是区分大小写的
JavaScript的数据类型
分为两种:原始类型(即基本数据类型)和对象类型(即引用数据类型);
js常用的基本数据类型包括
undefined - - (未定义)、null- - (空的)、number - - (数字)、boolean- - (布尔值)、string- - (字符串)
js的引用数据类型也就是
对象类型Object- - (对象),比如:array - - (数组)、function - - (函数)、data - - (时间)等;
JS为弱类型语言,不必声明数据类型,而是在使用或赋值的时候确定其类型 基本数据类型存放在栈中 引用数据类型存放在堆中【讲完类型后面详细说堆和栈】
强类型语言/弱类型语言
强类型语言【java】:
-
要求变量的使用要严格符合定义,所有变量都必须先定义后使用。
-
一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了
弱类型语言【js/python/php】:
-
它与强类型定义语言相反, 一个变量可以赋不同数据类型的值
对象类型
-
本地对象:string,Array,Date,Math,Golbal,独立于宿主环境的ECMAScript实现提供的对象
-
宿主对象:DOM,BOM。ECMAScript中的‘宿主’就是我们网页的运行环境,即‘操作系统’和‘浏览器’
判断数据类型
可以通过typeof运算符来判断数据类型
String类型【重要】
js中用来表述文本的数据类型
-
字符串用单引号或双引号包括起来
-
单双引号均不能解析变量
-
变量与字符串,变量与变量之间可以使用运算符‘+’来链接
-
单引号和双引号可以互相嵌套,如果单引号中要嵌套单引号,需要使用转义字符
转义字符![](https://i-blog.csdnimg.cn/direct/09577445e1d94839b7cf2f82b8ee1f6c.png)
注意:
-
\n换行(在alert中生效)
-
8进制表示法【进行两次转换,这里面的数字是ASCII中表示的八进制数字】
-
16进制表示法
-
16进制unicode表示法
Number
按照进制划分:二进制、八进制、十进制、十六进制 按照其他划分:整形、浮点型、NaN(not a number) js中所有的数字是以IEEE-75标准格式表示的,浮点数的精确问题不是js特有的;因为有点小树以二进制表示位数是无穷的
整形: 0,6,-100,0xff00(十六进制),0377/0o77(八进制),0b1010(二进制),不管输入的是几进制,最终显示时都会转为10进制
浮点型: 1.2,0.123,3.14e11=>3,14*10^11 科学计数法
NaN(not a number): NaN是一个特殊的number值,not a number表示非数字,当程序由于某种原因计算错误时,将产生一个无意义的数字NaN NaN与任何值都不想等,包括NaN本身 任何涉及NaN的操作,结果都为NaN
var a='hello';
b=10;
alert(a-b) //NaN
-
Boolean
-
值只有true和false。分别代表逻辑真与假
-
布尔值通常用来表示比较所得的结果
-
true和false是严格区分大小写的
undefined【了解】
定义了一个变量但没有为该变量赋值,使用了一个并未赋值的变量
使用了一个不存在的对象的属性时
var n;
alert(n);
var people=new Object; // 创建一个object对象
people.height =162; // 添加属性height
alert(people.height); // 输出属性height
people.show=function(){ // 添加方法show
alert(this.color); // 调用属性color
alert(this.height); // 调用属性 height
}
people.show() // 调用方法show
null【了解】
-
null表示一个空值
-
null不等于空字符串""、''或0
-
null和undefined的区别是,null表示一个变量被赋予了一个空值,而undefined则表示该变量尚未被赋值
-
Array(数组)【重要】
创建数组
方法一:
var 数组名=new Array();
方法二:
var cars=new Array("Audi","BMW","BYD");
方法三:
var cars=["Audi","BMW","BYD"];
获取数组中的值
循环遍历输出所有的数据
多维数组
-
Object 对象【重要】
对象:一切皆对象
面向过程:按照时间的发生顺序,从上往下依次执行 对象对象:指挥对象做某件事情
对象: 属性:本身所拥有的特性 方式:能做的事情
对象: { },使用{ }包括起来的都是对象 [ ], 使用[ ]包括起来的都是数组
创建对象: 方法一:var 对象名称 = new Object(); 方法二:var 对象名称 = {'键':‘值’,'键':‘值,'键':‘值,'键':‘值};
创建对象
获取对象中的属性和方法
使用第二种方式创建人的对象