js学习笔记--数据类型,转换,及位运算,逻辑运算,三目运算(5.7 5.8小结)

var:变量
语法
var 变量名;
var 声明变量时的关键,可以省略,省略之后变量就成为了“全局变量”,不推荐省略
变量名:只能是由字母、数字、下划线(_)以及$
不允许使用JS关键字及保留关键字
变量名不能以数字开头

const:常量,
在程序中,一旦声明,在运行过程中就不允许被修改的数据,称之为常量(一周有几天、圆周率)
常量声明时,必须初始化值
一般常量的名字全部大写

console.log(); 控制台打印输出

typeof() 函数
作用:获取指定数据(变量)的数据类型
语法:typeof(变量) 或者 typeof 变量

isFinite() 函数用于检查其参数是否是无穷大。

2.数据类型
2-1.number类型
数字类型:可以表示32位(4个字节)的整数,也可以表示64位的浮点数(小数)
var num =010;0开头的数据都是八进制
整数:十进制 八进制 逢8进一 0 1 2 3 4 5 6 7
var num=0x10; 0x开头的都是十六进制
小数:科学计数法 var num=3.14e10; 直接复制数字或者小数的变量就是number类型
2-2.string类型 用单引号或者双引号括起来的变量就是字符串类型
字符串类型:由unicode字符(万国码,任何国家的任何语言在计算机中都有独立的编码)、数字、标点符号组成
查看unicode的方法
在控制台输入:字符.charCodeAt();
2-3 boolean类型
布尔类型:来表示逻辑的真或假,肯定或否定,只能出现一种结果
值: true(真) false(假) 给boolean类型赋值时不能加引号 var nag=true
2-4.undefined
表示访问的数据不存在
使用场景:
1、声明变量未赋值 js给变量的初始值
2、访问的对象属性不存在
2-5.null 对象不存在、或者变量的值为空

3.数据类型的转换–强制转换
3- 1、 toString()
转换成字符串,任意一种数据烈性都可以被转换为string类型
语法:数据(变量).toString();
调用toString()函数后,会返回一个string类型的数据,原数据类型并没有影响
3- 2、parseInt(数据)
将数据转换为number(整数)
碰到第一个非整数字符,则停止转换
如果无法转换时,转换的结果为NaN
3- 3、parseFloat(数据)
将数据转换为number类型(小数)
碰到第一个非小数点或者数字字符,则停止转换
3- 4、Number(数据)
将一个数据解析为number类型
如果数据中包含非法字符,则返回NaN

4、隐式转换—自动转换
不同类型的数据在计算过程种会进行自动转换
4-1.任何一种数据类型的数据,在与string做 “+”运算时,都会将其转换为string,再做拼接
4-2. .number类型 +boolean类型 =number类型 将boolean类型转换成number类型
4-3.num + und =NaN 隐式转换:尝试将und转换为number,转换失败,给出一个结果 NaN(Not a Number)
NaN(Not a Number) ,不是一个数
函数:isNaN(数据) 是不是不是一个数 true 不是数 false 是数
作用:判断数据是否为 非数字类型(只判断数值,与类型无关),如果非数字,返回true,是数字返回false。
4- 4.boo + und;=string类型

5、转义符:
\n:换行
\t:缩进
\r:回车
\’: ’
\": "
\\: \

6、条件运算–三目运算
一目运算 – – ++
双目运算 + - * / % && || & | ^ > <
三目运算 需要三个表达式/操作数
语法:
表达式1?表达式2:表达式3;
true √
false √
表达式1运行的结果是boolean类型
若果表达式1的结果是true,整个表达式的结果为表达式2的运算结果
如果表达式的结果为false,整个表达式的结果为表达式3的运算结果

7、位运算符
只能做数字运算,将数字转化为二进制,再来做运算
7- 1、&
//按位与 ,将两边的操作数转化成二进制,每位的数字,只有对应都为1的时候,该位的结果才1,否则该位的结果为0
var n1=5;
var n2=3;
var r= n1 & n2;
console.log®;//1

			变量名   十进制   二进制
			
			n1        5		 101                                                                                                                                                                                                     
			n2        3		 011
			n1&n2     1      001	

7-2、|
按位或 ,两边的操作数转换成二进制,比较每位上的数字,两个数字中有一个1的话,该位的结果就是1,否则为0
r = n1 | n2;

			变量名  十进制  二进制
			n1      5		101
			n2      3		011
			r       7		111
		console.log("按位或的结果:"+r);
		var n3=86.9;//将86.9转换成二进制,在做按位或计算
		console.log(n3 | 0);
作用:向下取整 	

7-3、>>
按位左移,将二进制数字,向左移动n位,右边以0补位
console.log(2<<1);
console.log(2<<2);
console.log(2<<3);
console.log(2<<4);

			0000 0000 0010
			0000 0000 0100
			0000 0000 1000
			0000 0001 0000

7-4、>>
按位右移,将二进制数,向右移动n位,左边以0补位
console.log(16>>4);
10000 10000 — 00001

7-5 、 ^
异或 将两边的数字转换成二进制进行比较,每位上的数字,只有一个为1时,该位结果才为1,否则为0
console.log(n1,n2);
//交换两个变量的值
n1=n1^n2;
n2=n2^n1;
n1=n1^n2;
console.log(n1,n2);

			/*
			 变量名   	十进制  		二进制
			 n1     		5		101
			 n2				3		011
			 n1=n1^n2		6		110
			 
			 n2=n2^n1		5		110
			 						011
			 						101
			 						
			 n1=n1^n2      	3		110
			 						101
			 						011
			 			交换两个变量的值
			var num1=10,num2=12;
			var temp=num1;
			num1=num2;
			num2=temp;
			console.log(num1,num2);

8,、逻辑运算

&&
逻辑与并且 两边的数据或者表达式结果都是true时,返回true 否则返回false 见false则false
只要第一个条件为假,则不会判断第二个表达式,整个表达式的结果为 false

|| 逻辑或 或者两边的条件任意结果为true时,返回true,否则返回false 见true则true
只要第一个条件为真,则不会判断第二个条件,整个表达式的结果为true

!
取反

		var num1=10,num2=12,num3=10,num4=5;
		console.log();//false
		console.log();//true
		console.log(num1>num2 && ++num3>num4);//false
		console.log(num3);//
		console.log(num1>num2 || ++num3>num4);//false
		console.log(num3);
		console.log(num1<num2 || num3>++num4);//false
		console.log(num4)
		console.log(!isNaN("5"))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值