七种数据类型:
number、 string、 boolean 、symbol 、undefined 、null 、object
1、number
整数和小数:1 1.1 .1
科学记数法:1.23e2
二进制:0b11
八进制:011(后来 ES5 添加了 0o11 语法)
十六进制:0x11
2、string,两个值:true false
多行字符串:
var s = '12345' +
'67890' // 无回车符号
或
var s =
12345 67890
// 含回车符号3、boolean 的取值
只有两个值:true 和 false
a && b 在 a 和 b 都为 true 时,取值为 true;否则为 false
a || b 在 a 和 b 都为 false 时,取值为 false;否则为 true
4、undefined 和 null
都表示没有值,至于 JS 为什么有两个表示「没有值」的东西,参考https://twitter.com/BrendanEich/status/333008305461006336;
如果一个变量没有被赋值,那么这个变量的值就是 undefiend;
如果你想表示一个还没赋值的对象,就用 null;
5、object
object 就是上面几种基本类型(无序地)组合在一起;
object 里面可以有 object,例如:
var person = {
name: 'HK',
'xinxi': {
age: '27'
}, // 最后这个逗号可有可无
}
object 的 key 一律是字符串,不存在其他类型的 key
object[''] 是对的
object['key'] === object.key
注意 object.key 与 object[key] 不同
知识点::
1、在JS里显示特殊符号:
\0:null \b:后退键 \f:换页符
\n:换行符 \r:回车键 \t:制表符
\v:垂直制表符 \ ':单引号 \ '':双引号
\ \ :反斜杠
2、在对象里,数字键会自动转为字符串,加不加引号都可以:
var obj = {
0.7:'ha ha';
}
obj.[0.7] // 'ha ha' 等同于obj.['0.7'] // 'ha ha'
3、使用方括号,键名即属性名必须放在引号里,否则会被当作变量处理,点运算符和方括号运算符,不仅可以用来读取数值,还可以用来赋值:
var obj{ };
obj.p = 1;
等价于
var obj={'p':1}
4、查看一个对象的变量是否声明过,或查看它本身的所有属性,可以用Object.keys方法:
var obj = {
key1:1,
key2:2,
}
Object.keys(obj);//['key1','key2']
检查属性是否存在,用if in结构:
var obj = { };
if ('a' in obj){
console.log(obj.hasOwnProperty('a'))
}
5、for...in循环遍历属性
var obj = {a:1,b:2}
for (var key in obj){
console.log(obj[key])
}
网友评论