JavaScript基础扫盲


null和undefined

null是一个是非来表示一个空对象的,故 typeof 的返回值是object

undefined字面义为未定义,当遇到声明一个变量,但没有赋值的时候,typeof的类型即为undefined

非十进制的表示方法

  • 十六进制:以0x开头
  • 八进制:以0开头
  • 二进制:以0b开头

进制转换如果以指定进制规定的格式书写是没有问题的

parseInt有平台兼容的问题

直接使用parseInt()解析070的字符串在chrome平台会得到70,而在firefox平台则会直接识别其为八进制的字符串,然后转换成数字56

parseInt()的第二个参数为进制,指定进制转换便可解决这个问题。


强制类型转换

强制类型转换,将一个类型转换为需要的数据类型

string

  • toString():由转换类型的内置方法进行转换,即 value.toString()便可以获取对应的字符串
  • String():系统方法,当toString()方法无法使用时(主要是在nullundefined类型面前失效),便可以使用,nullundefined将变等价转换成相同的字符中"null""undefined"


number

  • Number()

    • 字符串-->数字

      • 纯数字组成的字符串,将得到相应的整数值
      • 如果字符串由数字和非数字字符组成,将得到NaN
      • 如果字符串是一个空串或一个空格的字符串,则转换为0
    • 布尔-->数字:true值为1,false值为0
    • null-->数字:null转换将得到值 0
    • undefined-->数字:undefined转换得到值是NaN,且NaN参与的运算都会得NaN
  • parseInt():将字符串转换成整数,也可以按进制进行转换。parseFloat()仅从字符串开头识别,如果数字位于中间,将无法识别转换且返回NaN

  • parseFloat():在parseInt()的基础上支持识别小数点后的数字位。


boolean

Boolean():将其它数据类型转换为bool值

数字,除了0NaNfalse,其余数,包括负数,转换结果为true

字符串,空串转换为false,其余为true

nullundefined,转换结果均为false

对象转换为true


运算

通过运算符可以对一个值或者多个值进行运算,并得到相应的结果。

算术运算符

  • 任何值和NaN做任何运算都得NaN
  • 任何数值与字符串做加法运算都先转换成字符串,然后变成字符串相加,拼接处理
  • 任何数值与字符串做减乘除运算,都先将字符串转换成数值然后进行数学计算。

布尔运算符

相等运算符

  • ==!=:进行相等运算,会自动进行类型转换,当1 == ”1”就会返回true
  • ===!===:进行全等运算,不会自动进行类型转换,当类型都不一样的时候,条件全等就不成立,不全等成立,反之,亦然

最新文章

  1. iMetro
  2. Thinkstation center M8600t装RHEL7不能联网,网卡驱动没装问题
  3. [转]IntelliJ IDEA 使用心得与常用快捷键
  4. PIC32MZ tutorial -- Core Timer
  5. UIWebView中Html中用JS调用OC方法及OC执行JS代码
  6. eclipse android 不会自动生成R.java文件和包的解决办法
  7. 操作笔记:linux下查看端口被占用
  8. 状态管理cookie 案例
  9. 转:探讨android更新UI的几种方法
  10. Java学习----你可以知道对象的工作结果(获取方法的返回值)
  11. gridview动态生成列
  12. c#里listview里如何获取点击的是哪一列
  13. Java和C++的对比
  14. 【Python3的函数初识】
  15. java创建线程的几种方式,了解一下
  16. PSP总结报告
  17. wsl ubuntu 配置c++环境
  18. angular raido checkbox select取值
  19. 使用Sphinx为你的python模块自动生成文档
  20. Template literals

热门文章

  1. SQL SEVER 死锁// 解除死锁
  2. bazel编译tensorflow 生成libtensorflow_inference.so 和 libandroid_tensorflow_inference_java.jar
  3. Python入门 六、像个 Pythonista
  4. windows10+arch linux双系统 uefi启动
  5. 指令重排序所带来的问题及使用volatile关键字解决问题
  6. [转]"RDLC"报表-参数传递及主从报表
  7. EditPlus 4:设置字体
  8. OPPO R11 R11plus系列 解锁BootLoader ROOT Xposed 你的手机你做主
  9. js实现“级联菜单”
  10. oracle-3种工具使用