JavaScript从零开始3

本文介绍了JavaScript的基础知识,包括对象的创建与使用、条件语句、循环结构等,并详细讲解了Map和Set的特性与应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaScript从零开始3

-----------------------------------------------------------------------------

一、对象

    (1)JS里的字符串,数组,数值,函数都是对象。

     (2)自定义的,由键值对组成的属性的集合。

var person={
   name:'小王', //用逗号隔开,最后一个不加逗号
   age:28,
   sex:'man',
   profession:'programmer',
   'work-add':'BeiJing'
}
console.log(person.name+", 工作地点:"+ person['work-add'] +", 女友: "+person.grilFrind); 
// 小王, 工作地点:BeiJing, 女友: undefined
      删除某个属性delete,判断对象是否具有某个属性in , hasOwnProperty

delete person.age;//true
console.log(person);//{name: "小王", sex: "man", profession: "programmer", work-add: "BeiJing"}
delete person.grilFrind;//true 即使没有这个属性也返回true
console.log(person);//{name: "小王", sex: "man", profession: "programmer", work-add: "BeiJing"}
'name' in person;//true
'grilfrind' in person;//false
'toString' in person;//true  person继承的属性
person.hasOwnProperty('toSting');//false 判断对象自己是否含有某个属性,不包括继承的。
二、判断语句

if...else..    if...else if...else...    比较容易理解,不多描述。需要注意的地方:nullundefined0NaN和空字符串''视为false

三、循环

for  ,  for...in , while ,   do...while  也较容易理解,其中 for...in可以遍历对象里的属性

for(var key in person)
{
  console.log(person[key]);
}
// 小王
// 28
// man
// programmer
// BeiJing

for...of 较for...in 的区别是它是遍历数组,Map,Set内的元素,for...in 是遍历key值或者索引值

var arr=[1,2,'a',4];
for(var i of arr)
{
   console.log(i); //1,2,a,4
}
var person= new Map([['name','小王'],['age',28],['sex','man'], ['profession','programmer'],['work-add','BeiJing']]);

for(var key of person)
{
    console.log(key);
}//['name','小王'] ['age',28] ['sex','man'] ['profession','programmer'] ['work-add','BeiJing']

 forEach这个更强大,是ES5.1引入,要看用户使用的浏览器是否支持

var arr = [1, 'a', 'hello'];
arr.forEach(function (element) {
    console.log(element);//1 a hello
});
var s = new Set([1, 'a', 'hello']);
s.forEach(function (element, sameElement, set) {
    console.log(element);//1 a hello
});
var m = new Map([['name', '小李'], ['age', 20], ['sex', 'man']]);
m.forEach(function (value, key, map) {
    console.log(value);//小李 20 man
});
四、Map和Set

Map 可以理解为由键值对组成的一维数组,或者说是一个二维数组,我这里理解的,呵呵。

Set 没有value的Map。

二者都是进行某种操作都会用到key, Map 一般只用到get,set,delete,    Set一般用到add,delete

var m = new Map([['姓名','小王'],['性别','男'],['age',18],['tel',188888888]]);
m.get('age'); 
m.set('grilFrind','小李');
console.log(m);//{"姓名" => "小王", "性别" => "男", "age" => 18, "tel" => 188888888, "grilFrind" => "小李"}
m.delete('性别');
console.log(m);//{"姓名" => "小王", "age" => 18, "tel" => 188888888, "grilFrind" => "小李"}
var s=new Set([1,2,3]);
s.add('4');
s.delete(1);
console.log(m);//{2, 3, "4"}









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值