js学习笔记(十)更多
1、只要把非空对象用在布尔环境中,它就会被转化成true,这适用于所有对象(包括所有数组和函数),例如,下列所有对象在用于布尔值环境时都将被转化成true:
new Boolean(false) //即使内部值是false,但对象仍将它转化为true
new Number(0)
new String(“”)
new Array()
2、一些数据类型转化的技巧
(1)要把一个值转化成字符串可以把它连接在一个空串上,如:x+””
(2)要把一个值转化成数字,就用它减0,如: x-0
(3)要把一个值转化成布尔值,可以连用两个!! ,如: !!x
3、数字到字符串的转换,有以下三种方法(number代表一个数字)
(1)String(number)
(2) number+””
(3) number.toString(); //括号中可以带参数,表示以多少进制进行转化,默认为10,即十进制
4、把字符串转化为数字
(1)Number(string)
(2) string-0
(3) parseInt(string) //将一个字符串开头的所有数字转化成整数(只能转整数部分)
(4)parseFloat(string) //将一个字符串开头的所有数字转化成整数或小数
5、使用值和使用引用
使用值 | 使用引用 | |
复制 | 实际复制的是值,存在两个不同的、独立的副本 | 复制的只是对数字的引用,如果通过引用修改了数值,那么原始的引用值也会改变,即任何一个引用值改变了数值,其他的也会改变 |
传递 | 传递给函数的是值的一个独立的副本,对他的改变在函数外部没有影响 | 传递给函数的是对数值的引用,如果在函数内改变了这个引用的值,则这个改变在函数外部也是可见的,即函数外部那个引用的值也会改变 |
比较 | 比较的是两个独立的值,以判断它们是否相同 | 比较的是两个引用,以判断它们引用的是否是同一个值,如果两个引用不相等,即使两个数值相同那也是不相等的 |
6、使用值和使用引用总结
类型 | 复制时所使用的 | 传递时所使用的 | 比较时所使用的 |
数字 | 值 | 值 | 值 |
布尔值 | 值 | 值 | 值 |
字符串 | 不确定(可以假设为引用,但无法改变原始值) | 不确定(可以假设为引用,但无法改变原始值) | 可以假设为值 |
对象(包括数组、函数) | 引用 | 引用 | 引用 |