六种数据类型:
基本数据类型:
number----数值(整数,浮点数):1,1.23
string-----字符串():"hello"
boolean---布尔:true,false
复合数据类型
object----对象:值的集合
可以分为:
>狭义的对象
>数组
>function---函数(在oc中方法是不能作为数据类型的,但是Swift中协议也可以作为数据类型)
特殊类型
undefined:未定义
null:无值
确定一个值的类型
typeof
eg.
typeof 1
//"number"
typeof "abc"
//"string"复制代码
instanceof
eg.
[] instanceof Array;//[]是数组嘛?
//true 是
var a = {};a instanceof Array;
//false复制代码
null和undefined
这两很像,浏览器认为二者是一样的
undefined == null
//true复制代码
通过应用可以区分
在iOS中的网络请求工具方法通常返回一个闭包,有两个参数,error,rsp,如果,没有错误,可以个error传null,表示没有错误
undefined则通常提示出语法错误
function f(){};f();
//undefined.因为没有返回值复制代码
布尔值
如果某个位置预期出现一个布尔值,但是此处不是布尔值,那么会自动进行转换,除以下几种,其余都转换为"true"
- undefined
- null
- false
- 0
- NaN
- ""或者''(空串)
eg.
if (''){console.log('空串')};
//undefined
if ('2'){console.log('不是空串')};
//不是空串
//undefined
复制代码