JavaScript变量、数据类型、运算符及类型转换

目录

一、变量

二、数据类型

三、运算符

四、类型转换


一、变量

JavaScript中var关键字(varlable的缩写)来声明变量

var test = 20;

test = "张三";

JavaScript是一门弱类型的语言,变量可以存放不同类型的值

变量名需要循序如下规则:

组成字符可以是任何字母、数字、下划线(_)或美元符号($)

数字不能开头

建议使用驼峰命名

ECMAScript 6 新增 let 关键字来定义变量,它的用法类似于var,但所声明的变量,只在let关键字所在的代码块内有效,且不允许重复声明

ECMAScript 6 新增了count关键字,用来声明一个只读的常量,一旦声明,常量的值就不能改变。

var的特点:1、作用域:全局变量 2、变量名可以重复定义

二、数据类型

JavaScript中分为:原始类型和引用类型

5种原始类型:

number:数字(整数,小数,NaN(Not a Number))

string:字符、字符串,单双引号即可

boolean:布尔。true,false

undefined:当声明的变量未初始化时,该变量的默认值是undefined

使用typeof运算符可以获取数据类型

alert(typeod age);

number:数字(整数,小数,NaN(Not a Number)):

<script>
  //number
  var age = 20;
  var price = 99.8;
  alert(typeof age);
  alert(typeof price);

</script>

运行结果两次重复弹出(number):

31dc649a495847088990760370bb9b33.png

 string:字符、字符串,单双引号即可:

<script>
  //String
  var ch = 'a';
  var name = '张三';
  var addr = "北京";

</script>

运行结果三次重复弹出(string):

a1ab552027c5454fa06d87f68f4df9dc.png

 boolean:布尔。true,false:

<script>
  //boolean
  var flag = true;
  var flag2 = false;

  alert(typeof flag);
  alert(typeof flag2);
</script>

运行结果两次重复弹出(boolean):

0e90370d69ed4a42aed3db8dbd091018.png

 undefined:当声明的变量未初始化时,该变量的默认值是undefined:

<script>
  //undefined
  var a;
  alert(typeof a);

</script>

运行结果为(undefined):

ad81643126ea47e4bda38397ec44af6c.png

 Object:

注释:您也许会问,为什么 typeof 运算符对于 null 值会返回 "Object"。这实际上是 JavaScript 最初实现中的一个错误,然后被 ECMAScript 沿用了。现在,null 被认为是对象的占位符,从而解释了这一矛盾,但从技术上来说,它仍然是原始值

<script>
  // null
  var obj = null;

  alert(typeof obj);

</script>

运行结果为(object): 

2c29f966b2ef4d4bad60cfc4eb85c47c.png

三、运算符

一元运算符:++,--

算术运算符:+,-,*,/,%

赋值运算符:=,+=,-=...

关系运算符:>,<,>=,<=,!=,==,===...

逻辑运算符:&&,||,!

三元运算符:条件表达式?true_value:false_value

==:判断类型是否一样,如果不一样,则进行类型转换 ,再去比较其值

===:判断类型是否一样,如果不一样,连接返回false,再去比较其值

<script>

    var age1 = 20;
    var age2 = "20";

    alert(age1 == age2);//true

    alert(age1 === age2);//false
</script>

运行结果:==为true,===为false

四、类型转换

类型转换:
    其他类型转为number:
        1、string:按照字符串的字面值,转为数字,如果字面值不是数字,则转为NaN
           一般使用parseInt
        2、boolean:true转为1,false转为0

    其他类型转为boolean
        1、number:0和NaN会转为false,其他的数字转为true
        2、string:空字符串转为false,其他的字符串转为true
        3、null:false
        4、undefined:false

健壮性判断:

<script>    
var flag = undefined;
    //
    //健壮性判断
    //if(str != null && str.length > 0)等价与下面
    if(flag){
        alert("转为true");
    }else{
        alert("转为false");
    }
</script>

运行结果:

4f08ea94cf3f431fb418c32ed10f924e.png

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏志121

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值