js数据类型、运算符

1、数据类型
变量命名规则

不能使用关键字和保留字
关键字:已有的语法
保留字:还没有使用的关键字
首字母可以是字母、下划线、$符,不能是数字、运算符
适合多个单词定义变量:
驼峰命名,第二个单词首字母大写
匈牙利命名法,单词前添加数据类型辨识,如iNum
下划线命名,通过下划线连接多个单词
折行显示

当引号内的代码片段需要折行,例如:

'<ul><li>
</li></ul>'

可以用+好进行连接:

'<ul><li>'+
'</li></ul>'

可以用\进行隔开:

'<ul><li>\
'</li></ul>\

注意:使用\时,前后不能有空格
可以使用ES6语法包括:

`<ul><li>
</li></ul>`

数据类型

字符串
var foo = ‘这是一个字符串’;
var bar = ‘hello world’;
数字
var foo = 100;
布尔值
var a = true;
var b = false;
对象
var a = {}; //对象
var b = []; //数组
var c = function(){}; //函数
null : 空
var a = null;
undefined : 未定义
var a = undefined;

undefined与null的区别
null计算的时候,会转成0,而undefined不会转。
null是一个主动设计成空值,undefined是一个被动的设计成未定义。
null是先有的类型,而undefined是后有的类型,是对null的完善。

六种划分
字符串、数字、布尔值、对象、null、undefined

八种划分
字符串、数字、布尔值 对象(狭义的对象,数组,函数) null、undefined

Symbol
第七种类型(ES6)。

基本类型 : 字符串、数字、布尔值
复合类型 : 对象
特殊类型 : null、undefined
判断类型

typeof以及返回类型(都是字符串)
扩展:
判断类型
typeof
instanceof
Object.prototype.toString.call()
NaN的类型
number类型
转换类型

显式类型转换:调用转换方法,主动去转换。
Number()、String()、Boolean()

隐式类型转换:被动转换,由JS程序自动进行转换的。
+ - / * 隐式类型转换,加法会把数字转换为字符,其他的都是把字符转换为数字
== 隐式类型转换
+ 数值 -负数值
比较类型

==与=之间的区别
== 进行比较, = 进行赋值
当两边都是字符串的情况下
按位进行比较,字符的unicode编码进行比较
当两边不都是字符串的情况下
查看字符对应的unicode编码:charCodeAt()
特殊类型的比较
null、undefined、NaN
null与undefined比较的时候,返回true。除了下面三种情况,跟其他任何值比较都是false
console.log( null == null );
console.log( undefined == undefined );
console.log( null == undefined );
扩展:Object.is()
ES6 : Object.is() : 修正一些判断的
console.log( Object.is(NaN , NaN) ) \true;
console.log( Object.is(+0 , -0) ) \false
运算符
运算符

算术运算符(10种)

+ - / * %
++ --
+ -
**

4%7 -> 4 当被除数小于除数的时候,余数就是被除数自身
123秒
123%60 , 转换后剩余的秒数

var a = 1;
console.log( a++ ); // 先返回a,再对a+1操作
console.log( ++a ); // 先对a+1操作,然后再返回a

+ 数值 -负数值
var a = ‘123’;
console.log( typeof +a );

指数运算符 , 从右向左计算 (ES6)
console.log( 2 ** 2 ** 3 );
console.log( 2 * 2 * 2 );
console.log( Math.pow(2,5) );

赋值运算符(简单与复合)
var a = 1;
a = a + 2; //简单的赋值运算符

var a = 1;
a += 2; //复合的赋值运算符

比较运算符(8种)
== === != !==
===表示严格相等,值和类型都要相等,才相等

逻辑运算符 : &&(与) ||(或) !(非)
&& : 逻辑两边都为真,结果才为真,逻辑两边有一边不为真,结果就为假。
|| : 逻辑两边有一边为真,结果就为真,逻辑两边都为假,结果才为假。

& | 比较运算时,最两个数进行二进制按位比较

! : 逻辑的取反,真的就是变成假的,假的就会变成真的

条件运算符

三元运算,三目运算 ? :
当条件为真,就返回问号后面的内容,当条件为假,就返回冒号后面的内容
执行顺序从右向左
console.log( false ? 1 : 2 );
console.log( false ? 1 : 2 ? 3 : 4 );

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值