JS学习笔记

1.script标签一旦引入外部文件,就不能再内部编写代码了,即使编写了浏览器也会忽略,如有需要则可以再创建一个新的script标签用于编写内部代码。

2.typeof可以检查变量的类型, Number.MAX_VALUE是最大值, Infinity表示正无穷, NaN表示不是一个数字。
typeof null 返回object, typeof undefined 返回 undefined

3.String Number Boolean Null Undefined 五种基本数据类型
强制类型转换:
一.将其他数据类型转换为String
(1) toString()方法
a.toString()方法,但此类转换并不会改变原来的a 的变量类型, 改变的是b = a.toString()这个b.
需要注意的是, null 和 undefined 这两个值没有toString() 方法
(2) String()函数
null和undefined 可以使用String()函数

二.将其他数据类型转换为Number
(1)Number()函数,null转换为数字是0, undefined 转换为数字是NaN。
(2)专门针对字符串的parseInt()方法, 取出字符串中有效的整数
parseFloat()方法,取出字符串中有效的小数
如果对非字符串使用parseInt()方法,则会先转换为字符串,然后再操作

三.将其他类型转换为Boolean,使用Boolean()函数
数字转布尔,除了0和NaN,其余都是true
字符串转布尔, 除了空串,其实都是true, 注意" "中间有个空格, 不是空串
null 和undefined 都会转换为false
对象也会转换为true

4.typeof就是运算符,它会将该值的类型以字符串的形式返回
prompt取过来的是字符串类型

5.
一. +号
当对非Number 类型的值进行运算, 会将这些值转换为Number 再进行运算
任何值和NaN做运算结果都是NaN
字符串的加法比较特殊:
如果对两个字符串进行加法运算, 则会进行拼串
任何值和字符串做加法运算,都会先转换为字符串,然后再做拼串,所以我们只需要将任意的数据结构+""就可以将其转换为String
1+2+“3”=“33”, “1”+2+3=“123”

二.减号
任何类型都会转换为Number进行运算,包括string, 100-“1”=99
可以通过 -0 *1 /1将其他数据类型转换为Number
‘123’-0=123, ‘123’-‘0’=123,都会转换为Number类型

6.可以通过一元运算符+将其他数据类型转换为Number
如+“18”=18
可以对任意数据类型进行两次取反操作,将其转换为Boolean类型

7.对于非布尔值进行与或运算,会先将其转换为布尔值,再进行运算,最后返回原值
两个true返回靠后的那个true,1&&2返回2
两个false返回前面的那个false, 0&&NaN返回0

8.比较两个字符串时,比较的是字符串的字符编码

9.进行恒等比较时,会默认转换数据类型,如18=='18’为true, 将字符串转换为数字。

上一篇:js第一天


下一篇:js笔记_变量_常亮_数据类型_数据类型转换_运算符