js补充
<a href="javascript:;">点击</a>
<a href="javascript:alert('测试');">点击</a>
说明:都会阻止a默认跳转,第二个会输出alert
- typeof的返回值都是字符串
- null=>typeof 输出object
- typeof undefined 输出undefined
- script一旦引入外部文件,就不能编写代码了,会被浏览器忽略,可以创建一个新的script标签编写代码
- 强制类型转换
- 其他类型转string
- null和underfined没有toString()方法,强制转换会报错,但是可以通过String函数,转换这两个类型,输出"null","underfined"
- 对于Number和boolean类型,toStinrg()和String等效
- 其他类型转Number
- 其他类型转Number,利用Number().如果字符串非数字,转换输出值是NaN;空串则转换结果为0;布尔值true转为1.false转为0;null转数字是0,underfined转数字结果是NaN
- 专门用来处理字符串转Number,parseInt/parseFloat,例如Number("123px")结果是NaN,但是parseInt会输出123,会提取有效的数字转换为Number(遇到第一位非数字的字符结束) 。如果对非string使用parseInt/parseFloat,会先将其转成string在操作,例如:parseInt(true)结果就是NaN.
- parseInt("070",10).指的是传递的参数一是按照十进制转换,即使0开头代表八进制。结果还是10。参数二是对参数一进制的说明。
- 其他类型转布尔
- 使用Boolean()
- 数字转布尔值:NaN/0 false,其余都是true
- 字符串转布尔值,除了空串,其余都是true
- null/underfined 是false
- 算术运算符
- 相等运算符
- ==(不会比较数据类型)
- underfined==null true(underfined衍生自null)
- null==0 false
- NaN不和任何数据相等(包括其本身),通过isNaN()判断数据是否是NaN
- ===(会比较数据类型)
- 还有!=和!==
- break和continue(用于退出switch或循环语句(不能在if里面使用))
- break:break默认停止最近的循环,但是可以通过类似java的label停止指定的循环
- continue: 跳过当前循环