区别
js的5种基本数据: number null undfined boolean string
1种引用数据:object对象(函数 数组 时间 标签(页面中的元素)等等)
基本数据
var a=20
var b=a//动态运行流程==>第一步 先声明一个变量叫b,
//第二步先取a变量中保存的值,第三步把取到的20赋值给b
console.log(b)
b=200
console.log(a)
引用数据类型:一个大型的复杂的基本数据和引用数据的"集合体"
var a=[10,20,30]
var b=a//动态运行流程==>第一步 先声明一个变量叫b,
//第二步把变量a对应的引用数据的内存空间让b变量也去引用
// console.log(a)
// console.log(b)
// console.log(b[1])
b[1]=200
console.log(b)//[10,200,30]
console.log(a)//[10,200,30]
数组
1、 数组:数组就是引用数据类型的
2、 保存的元素用逗号隔开
3、数组取元素是通过下标取值的 从0下标开始的
4、数组中可以保存很多数据,每一个数据的类型是不限定的
对象
对象-object
1、跟数据一样 用来保存数据的 只不过每一个数据都自己设计"下标"(键值对的键)
2、可以保存任何类型的数据
var obj1={name:"karen",age:24}
console.log(obj1)
var a1=obj1["name"]
console.log(a1) //karen
var b1=obj1["age"]
console.log(b1) //24
obj1["age"]=25
console.log(obj1) //{name:"karen",age:25}
var obj3={name:"jack"}
obj3["name"]="karen"//如果已经有这个属性了 就会覆盖之前的值
obj3["age"]=25//如果没有age成员 就会添加一个新成员age 然后赋值25
var a="Jiang"
var b="firstname"
补一行代码,要求是b必须使用到变量a和b //obj3[b]=a,不能用"b",这代表字符串
console.log(obj3)//{name:"karen",age:25,firstname:"Jiang"}
var obj={}
var name="first"
obj[name]="karen" //name是变量
obj["name"]="jack" //name是字符串
console.log(obj)
3、对象的成员有一种简便写法(语法糖)
obj["name"]<===>等价于obj.name