Dev_Nick

导航

JavaScript(二)---- 变量、数据类型和运算符

变量

javaScript中的变量变量是弱类型的,用var来声明。

javascript的变量声明格式:
  var 变量名 = 数据;

声明变量要注意的事项:
  1. 在javascript中声明变量是 使用var关键字声明的,javascript中的变量可以存储任意的数据类型数据。
  2. javascript中变量数据类型是根据存储的值决定的,可以随时更改存储数据的类型。
  3. 定义了多个同名的变量是,后定义的同名变量是覆盖前面定义的同名变量。
  4. 声明变量的时候可以省略var关键字,但是不建议省略。

数据类型

ECMASCRIPT 中有4种基本数据类型:Undefined, Boolean,Number和String。

关键字typeof可以获取一个变量的类型。

代码示例:

1 <script type="text/javascript">
2             document.write(typeof 1+"<br />"); //number
3             document.write(typeof 1.0+"<br />"); //number
4             document.write(typeof 'a'+"<br />"); //string
5             document.write(typeof "abc"+"<br />"); //string
6             document.write(typeof true+"<br />"); //boolean
7             document.write(typeof num+"<br />"); //undefined
8         </script>

注意:undefined代表该变量没有定义。

字符串转换成数字

ECMAScript 提供了两种把非数字的原始值转换成数字的方法,

即 parseInt() 和 parseFloat()。只有对 String 类型调用这些方法,它们才能正确运行;对其他类型返回的都是 NaN。

NaN:not  a number 不是一个数字。

parseInt() 方法首先查看位置 0 处的字符,判断它是否是个有效数字;如果不是,该方法将返回 NaN,不再继续执行其他操作。但如果该字符是有效数字,该方法将查看位置 1 处的字符,进行同样的测试。这一过程将持续到发现非有效数字的字符为止,此时 parseInt() 将把该字符之前的字符串转换成数字。

parseFloat()和parseInt()的检测方法一致,但是parseFloat()如果转化的字符串为整数字符串则返回整数。

javascript提供一个IsNaN的方法来判断该字符串是否是 一个数字。不是一个数字返回true,是一个数字返回false。

代码如下

 1         <script type="text/javascript">
 2             //parseInt()
 3             document.write(parseInt(true)+"<br />"); //NaN
 4             document.write(parseInt("0123")+"<br />"); //123
 5             document.write(parseInt("a123")+"<br />"); //NaN
 6             document.write(parseInt("0x123")+"<br />"); //291
 7             document.write(parseInt("123a")+"<br />"); //123
 8             //parseFloat()
 9             document.write(parseFloat("123")+"<br />"); //123
10             document.write(parseFloat("123.1")+"<br />"); //123.1
11             document.write(parseFloat("a123.0")+"<br />"); //NaN
12             document.write(parseFloat("123.0a")+"<br />"); //123
13             document.write(parseFloat("123.0")+"<br />"); //123
14             //isNaN 是数字返回false 不是数字返回true
15             document.write(isNaN("123.0")+"<br />");  //false
16             document.write(isNaN("a123.0")+"<br />"); //true
17         </script>

运算符

1、算数运算符

+、-、*、/、%

+法运算符的特殊之处:

  可以进行数值之间的加减,也可以作为字符串的连接符。但是作为加法运算符的时候,任何一个数和NaN相加,结果都说NaN。

2、比较运算符

>、<、<=、>=、!=

注意:比较运算符不只能比较数值,还能比较字符串。字符串和数字之间进行比较时,js会先把字符串转化为数字再进行比较。

字符串与字符串的比较规则是:
    情况1: 能找到对应位置上的不同字符,那么就比较第一个不同字符的大小。
    情况2: 不能找到对应位置上的不同字符,这时候比较的是两个字符串的长度。

3、逻辑运算符

&& 与

||    或

!    非

4、三目运算符

表达式?真值:假值

例如:var iMax = (iNum1 > iNum2) ? iNum1 : iNum2;

 5、复合运算符

简单的赋值运算符由等号(=)实现,只是把等号右边的值赋予等号左边的变量。

乘法/赋值(*=)

除法/赋值(/=)

取模/赋值(%=)

加法/赋值(+=)

减法/赋值(-=)

 

posted on 2017-01-16 16:03  Dev_Nick  阅读(139)  评论(0编辑  收藏  举报