学习历程~JS基础&数据类型

96 阅读1分钟

1、浏览器两大引擎:脚本解释引擎&绘图引擎

2、变量:内存中的存储一个数据的存储空间,再起一个名字

3、只有=才是赋值,不是追加,是完全覆盖

4、笔试题:var a,b=2;输出?

——a是undefined,b是2;因为","优先级高于"="

5、数据类型是什么?——数据在内存中的存储格式

6、只有js作者设计了俩“空”,null和undefined,其他开发语言没有;两者几乎没有区别,不过null是object

7、js是弱类型;typescript是强类型;js存在隐式转换和强势转换

8、基本类型的复制,是新开辟一个空间,互不干扰;引用类型的复制,是指针,指向同一个值

9、隐式转换(特殊):当加法碰上字符串,另一个类型即会被转换为字符串,继而进行拼接

10、强制转换

//转为Number:1)将纯数字组成的字符串或bool类型转为number2Number的问题:如果是带单位的,例如"10px"就不可以了,"10px"+"10px"就变成字符串拼接了
        Number("10px")+Number("10px"),————>NaNNot a Number)
    (3parseFloat:将字符串转为number类型的浮点数(小数),只要碰到数字和小数点就保留
        例如:
        parseFloat("10px")+parseFloat("10px")————20
        parseFloat("10.5px")+parseFloat("10.5px")————21
        但是:
        parseInt("10.5px")+parseInt("10.5px")————20
        如上:
        parseFloat一定比parseInt用得多,因为精确,具体情况具体使用
//转为string:1)x.toString()
        例如:
        true.toString()————"true"
        "1".toString()————"1"
        但是:
        null.toString()————报错
        undefined.toString()————报错
    (2String(x)
        接上:
        String(null)————"null"
        String(undefined)————"undefined"
        如上:
        String()更万能,其实隐式转换的底层就是调用了String()
//转为boolean: