JavaScript基础(二)

Javascript 强制类型转换函数

将其它的数据类型转换为String

方式一:

​ 调用被装换数据类型的toString()方法

​ 该方法不会影响原变量,他会将转换的结果返回

​ 但是注意:null和undefined这两个值没有toStruing()方法,如果调用他们的方法,会报错

方式二:

​ 调用toString()函数,并将被转换的数据作为参数传递给函数

​ 使用toString()函数做轻质类型转换时,

​ 对于Number和Boolean实际上就是调用的toString()方法

​ 但是对于null和undefined,就不会调用toString()方法

​ 他会讲null直接转换为"null"

​ 将undefined直接转换为"undefined"

将其它的数据类型转换为Number

使用Number()函数

​ 字符串 - - > 数字

​ 1、如果是纯数字的字符串,则直接将其转换为数字

​ 2、如果字符串中有非数字的内容,则转换为NaN

​ 3、如果字符串是一个空串或者是一个全是空格的自符串,则转换为0

​ 布尔 - - > 数字

​ true 转成 1

​ false 转成 0

​ null - - > 数字 0

​ undefined - - > 数字 NaN

调用parseInt()和parseFloat()函数转换为Number

​ parseInt()可以将一个字符串中的有效的整数内容去出来

​ parseFloat()作用和parseInt()类似,不同的是它可以获得有效的小数

​ 如果对非String使用parseInt()或parseFloat()它会先将其转换为String然后在操作

将其他的数据类型转换为Boolean

使用Boolean()函数

​ 数字 - - > 布尔

​ 除了0和NaN,其余的都是true

​ 字符串 - - > 布尔

​ 除了空串,其余的都是true

​ null和undefined都会转换为false

其他进制数字

  1. 在js中,如果需要表示16进制的数字,则需要以0x开头

  2. 如果需要表示8进制的数字,则需要以0开头

  3. 如果要要表示2进制的数字,则需要以0b开头

  4. 但是不是所有的浏览器都支持

    //十六进制
    a = 0x10;
    a = 0xff;
    a = 0xCafe;
    
    //八进制数字
    a = 070;
    
    //二进制数字
    //a = 0b10;
    

    js之运算符(算术运算符)

一、算术运算符

算术运算符包括一元算术运算符和二元算术运算符两种。

1、一元运算符

一元算术运算符包括一元加法(+)、一元减法(-)、递增(++)和递减(–)。只对一个表达式执行操作,并产生一个新值。

+/-:一元加减运算符

一元加法运算符把操作数转换为数字或者是NaN(用函数Number());

一元减法运算符它会根据需要把操作数转换为数字,然后改变运算结果的符号。

所以可以看出一元的加和一元减运算符主要用于基本的算术运算,也可以用于转换数据类型

JS中的逻辑运算符&&、||,位运算符|,&

1、JS中的||符号:

运算方法:

只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值。

只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值。

总结:真前假后

2、JS中的&&符号:

运算方法:

只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;

只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值;

总结:假前真后

JS中的赋值运算符

赋值运算符:用以给变量进行赋值

最常见的赋值运算符就是等号(=),将右侧的值赋给左侧的变量(表达式x=y表示将y赋值给x)

还有其他更多的复合赋值运算

  • x -= y 等同于 x = x - y
  • x *= y 等同于 x = x * y
  • x /= y 等同于 x = x / y
  • x %= y 等同于 x = x % y
  • x >>= y 等同于 x = x >> y
  • x <<= y 等同于 x = x << y
  • x >>>= y 等同于 x = x >>> y
  • x &= y 等同于 x = x & y
  • x |= y 等同于 x = x | y
  • x ^= y 等同于 x = x ^ y

js之运算符(关系运算符)

关系运算符用于测试两个值之间的关系,根据关系是否存在而返回true或者是false.关系表达式总是返回一个布尔值。

一、关系运算符

用于进行比较的运算符称作为关系运算符:

小于(<)、大于(>)、小于等于(<=)、大于等于(>=)、相等()、不等(!=)、全等(恒等)(=)、不全等(不恒等)(!==)、和其他运算符一样,当关系运算符操作非数值时要遵循一下规则:

1、两个操作数都是数值,则数值比较;

2、两个操作数都是字符串,则比较两个字符串对应的字符编码值;

3、两个操作数有一个是数值,则将另一个转换为数值,再进行数值比较;

4、两个操作数有一个是对象,则先调用valueOf()方法或toString()方法,再用结果比较;

var box=3 > 2;       //true
var box=3 > 22;      //false
var box= '3' > 22;   //false
var box= '3' > '22'; //true
var box= 'a' > 'b';  //false a=97,b=98
var box= 'a' > 'B';  //true B=66
var box= 1 > 对象;   //false,如果有toString()或valueOf()则返回1 > 返回数的值

在相等和不等的比较上,如果操作数是非数值,则遵循一下规则:

1.一个操作数是布尔值,则比较之前将其转换为数值,false转成0,true转成1;

2.一个操作数是字符串,则比较之前将其转成为数值再比较;

3.一个操作数是对象,则先调用valueOf()或toString()方法后再和返回值比较;

4.不需要任何转换的情况下,null和undefined是相等的;

5.一个操作数是NaN,则==返回false,!=返回true;并且NaN和自身不等;

6.两个操作数都是对象,则比较他们是否是同一个对象,如果都指向同一个对象,则返回true,否则返回false。

7.在全等和全不等的判断上,比如值和类型都相等,才返回true,否则返回false。

var box = 2 == 2;       //true
var box = '2' == 2;     //true,'2'会转成成数值2
var box = false == 0;   //true,false转成数值就是0
var box = 'a' == 'A';   //false,转换后的编码不一样
var box = 2 == {};      //false,执行toString()或valueOf()会改变
var box = 2 == NaN;     //false,只要有NaN,都是false
var box = {} == {};     //false,比较的是他们的地址,每个新创建对象的引用地址都不同
var age = {};
var height = age;
var box = age == height;//true,引用地址一样,所以相等
var box = '2' === 2     //false,值和类型都必须相等
var box = 2 !== 2       //false,值和类型都相等了

js中三元运算符

语法:条件?表达式1:表达式2

var even = (n % 2 === 0 ) ? true :false

上面代码的含义是 如果n可以被2整除,则even等于true,否则等于false
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值