js变量命名,类型(转换),==与===运算符区别

变量的命名规则和规范

规则 - 必须遵守的,不遵守会报错

由字母、数字、下划线、$符号组成,不能以数字开头

不能是关键字和保留字,例如:for、while。

区分大小写

规范 - 建议遵守的,不遵守不会报错

变量名必须有意义

遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。例如:userName、userPassword

变量类型 

1.Number(数字类型)

  1. 数值字面量:数值的固定值的表示法 110 1024 60.5
  2. 浮点数-浮点数的精度问题 

  3. var n = 5e-324;   // 科学计数法  5乘以10的-324次方  

      浮点数值的最高精度是 17 位小数,但在进行算术计算时其精确度远远不如整数
      var result = 0.1 + 0.2;    // 结果不是 0.3,而是:0.30000000000000004
       console.log(0.07 * 100);
       不要判断两个浮点数是否相等 

      最小值:Number.MIN_VALUE,这个值为: 5e-324
      最大值:Number.MAX_VALUE,这个值为: 1.7976931348623157e+308
      无穷大:Infinity
      无穷小:-Infinity  

扫描二维码关注公众号,回复: 3027531 查看本文章
  • NaN:not a number

    • NaN 与任何值都不相等,包括他本身

  • isNaN: is not a number 是   不是一个数?

2.Boolean(布尔类型)

  • Boolean字面量: true和false,区分大小写

  • 计算机内部存储:true为1,false为0  

3.String(字符串类型)

字符串长度 

var str = '黑马程序猿 Hello World';
 console.log(str.length);

字符串拼接 

  • 如果左右两边存在字符串,那么就是拼接 ‘100’+100  ==100100
  • 除了+之外的 - * / 那么进行计算 '100'-5   ==95
  • 如果两边都是字符串  - * / 其结果为NaN
  • 两边如果都是数字,那么就是算术功能。  

console.log(11 + 11);      //22
console.log('hello' + ' world'); //hello world
console.log('100' + '100');    // 100100
console.log('11' + 11);     //   1111
console.log('male:' + true); //male:true

4.null(空类型)

      不占据内存,可以清除变量  

5.undefine(未定义类型)

     变量声明了没定义 

6.Array(数组类型)

       后面详细介绍

7.Object(对象类型)

      后面详细介绍

 练习 :不使用临时变量交换变量值

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>
var num1=10,num2=20;
num1=num1+num2;
num2=num1-num2;
num1=num1-num2;
</script>

</body>
</html>

获取变量的类型

var age = 18;
 console.log(typeof age);  // 'number'

字符串转换

字符串的颜色是黑色的,数值类型是蓝色的,布尔类型也是蓝色的,undefined和null是灰色的

1.被动转换:通过变量.的方式(对undefined null 不起作用)

    var num=10;

    console.log(num.toString);

2强制转换:通过类型()的方式

    var num=10;

    console.log(Number(num));

数字转换

1.Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN

console.log(Number("8.12.1"));       //NaN
//       console.log(Number("8.12ff"));   //NaN
//       console.log(Number("ff"));   //NaN

 2.parseInt() parseFloat

 如果第一个数字,就解析第一个数字,遇到字符结束,如果第一个不是数字或者符号为NaN

console.log(parseInt("9.44.4"));  //9
//       console.log(parseInt("9ddd"));  //9
//       console.log(parseInt("gg"));   //NaN
//       console.log(parseInt("8"));    //8
//       console.log(parseInt("gg4"));  //NaN
//       console.log(parseFloat("8.11ff"));   //8.11
//       console.log(parseFloat("ff8.11"));   //8.11
//       console.log(parseFloat("8.12.3ff"));  //8.12
//       console.log(parseFloat("8.12.1"));  //8.12

 Boolean转换

除了特殊的几个转换为false,其他基本为ture

      0   undefined null NaN

console.log(Boolean(num));

关系运算符

==与===的区别:==只进行值得比较,===类型和值同时相等,则相等

console.log("2"==2);  //ture
console.log("2"===2); //flase
console.log("2"!=2); //flase
console.log("2"!==2); //ture

猜你喜欢

转载自blog.csdn.net/qq_40281275/article/details/82226816