javascript学习笔记04

目录

字符串

转义

 字符串与数组

length 属性

强制转换

Number():使用number函数可以将任何类型转换为数值

其它类型转化为数字类型:

String():使用string函数可以将任意类型强制转换为字符串类型

 Boolean()

自动转换

其它类型转化为数字类型 

算术运算符:


字符串

  • 双单引号交替使用(单引号内用双引号,双引号里用单引号)
  • 在字符串内部使用引号应该在前面加上反斜杠进行转义
  • 字符串默认只能写在一行,多行会报错
  • 在javascript里一般多使用双引号(风格特点)
  • 使用连接运算符(+)对字符串进行连接,将长字符串拆成多行书写,最终输出是单行
var longString = 'Long '
  + 'long '
  + 'long '
  + 'string';
//Long long long string

转义

反斜杠(\)在字符串内有特殊含义,用来表示一些特殊字符,所以又称为转义符。

需要用反斜杠转义的特殊字符,主要有下面这些。

  • \0 :null(\u0000

  • \b :后退键(\u0008

  • \f :换页符(\u000C

  • \n :换行符(\u000A

  • \r :回车键(\u000D

  • \t :制表符(\u0009

  • \v :垂直制表符(\u000B

  • \' :单引号(\u0027

  • \" :双引号(\u0022

  • \\ :反斜杠(\u005C

上面这些字符前面加上反斜杠,都表示特殊含义。

如果字符串的正常内容之中,需要包含反斜杠,则反斜杠前面需要再加一个反斜杠,用来对自身转义。

 字符串与数组

字符串可以被看作字符数组,可以使用数组的方括号运算符,用来返回某个位置的字符

如果方括号中的数字超过字符串的长度,或者方括号中根本不是数字,则返回undefined

无法改变字符串中的单个字符

length 属性

length属性返回字符串的长度,该属性也是无法改变的。

强制转换

Number():使用number函数可以将任何类型转换为数值

其它类型转化为数字类型:

// 数值:转换后还是原来的值
Number(324) // 324

// 字符串:如果可以被解析为数值,则转换为相应的数值
Number('324') // 324

// 字符串:如果不可以被解析为数值,返回 NaN
Number('324abc') // NaN

// 空字符串转为0
Number('') // 0

// 布尔值:true 转成 1,false 转成 0
Number(true) // 1
Number(false) // 0

// undefined:转成 NaN
Number(undefined) // NaN

// null:转成0
Number(null) // 0

Number函数将字符串转为数值,要比parseInt函数严格很多 ,只要有一个字符无法转成数值,整个字符串就会被转为NaN

parseInt('42 cats') // 42
Number('42 cats') // NaN

String():使用string函数可以将任意类型强制转换为字符串类型

  • 数值:转为相应的字符串。

  • 字符串:转换后还是原来的值。

  • 布尔值true转为字符串"true"false转为字符串"false"

  • undefined:转为字符串"undefined"

  • null:转为字符串"null"

String(123) // "123"
String('abc') // "abc"
String(true) // "true"
String(undefined) // "undefined"
String(null) // "null"

变量名.toString()

 Boolean()

Boolean()函数可以将任意类型的值转为布尔值。

它的转换规则相对简单:除了以下五个值的转换结果为false,其他的值全部为true

  • undefined

  • null

  • 0(包含-0+0

  • NaN

  • ''(空字符串)

Boolean(undefined) // false
Boolean(null) // false
Boolean(0) // false
Boolean(NaN) // false
Boolean('') // false

自动转换

以强制转换为基础,JavaScript 会自动转换数据类型,即转换是自动完成的,用户不可见。

1.不同类型的数据互相运算。

2.对非布尔值类型的数据求布尔值。

3.对非数值类型的值使用一元运算符(即+-)。

    用+前面一个是字符串时后面都会变成字符串的拼接

    用-会自动转化为数值(无法识别则结果为NaN)

123 + 'abc' // "123abc"

if ('abc') {
  console.log('hello')
}  // "hello"


+ {foo: 'bar'} // NaN
- [1, 2, 3] // NaN

其它类型转化为数字类型 

- parseInt    转化为整数   (向下取整)

- parseFloat  转化为浮点数

算术运算符:

javaScript提供了10个算术运算符

        1.加法运算符:x + y     //允许非数值相加

        2.减法运算符:x - y

        3.乘法运算符:x * y

        4.除法运算符:x / y

        5.余数运算符:x % y

                取余运算结果的正负值只与x的正负有关

                如 : 1%2 =1      -1%2=-1     -1%-2=-1

                浮点数取余值精确度不准确  

        6.自增运算符:++x或x++

        7.自减运算符:--x或x--

        8.数值运算符:+x

                非数值运算符经数值运算符后都会变成数值,作用于number相似(不改变原始值,只是需要用的时候转换)

        9.负数值运算符:-x

                转化为数值后加负号 多个连续使用满足负负得正原则

        10.指数运算符:x ** y   //x的y次方

                注意:指数运算符是右结合,而不是左结合 例: 2 ** 3 ** 2  == 512 相当于2 ** (3 ** 2)

比较运算符用于比较两个值的大小,然后返回一个布尔值,表示是否满足条件

javascript一共提供了8个比较运算符

        1.大于运算符: >

        2.小于运算符: <

        3.大于等于运算符: >=

        4.小于等于运算符: <=

        5.相等运算符,比较两个值是否相等: ==

        6.严格相等运算符,比较两个值是否为"同一个值": ===

        7.不相等运算符: !=

        8.严格不相等运算符: !==

(比较的Unicode的大小)

NaN与任何人比较都是false

布尔运算符用于将表达式

        1.取反运算符: !

                *非布尔值会先转化为布尔值再取反

        2.或运算符: ||

        3.且运算符: &&

        4.三元运算符: ?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

WA终结者

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

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

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

打赏作者

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

抵扣说明:

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

余额充值