W3Cschool编程实战:JavaScript

记录一下在W3Cschool编程实战:JavaScript中遇到的难题。

1、JavaScript 使用对象进行查找值

对象和字典一样,可以用来存储键/值对。如果你的数据跟对象一样,你可以用对象来查找你想要的值,而不是使用switch或if/else语句。

当你知道你的输入数据在某个范围时,这种查找方式极为有效。


  
  
// Setup function phoneticLookup(val) { var result = ""; // Only change code below this line  var lookup ={     "alpha": "Adams", "bravo": "Boston",  "charlie": "Chicago", "delta": "Denver", "echo": "Easy", "foxtrot": "Frank"};

result = lookup[val];//关键点

// Only change code above this line
return result;
}

// Change this value to test
phoneticLookup("charlie");
  
  

2、JavaScript JSON集合操作
有一个JSON对象,代表着你的专辑集。每一张专辑由一个唯一的id标识,并具有多种属性。但并非所有的专辑都有完整的信息。

写一个函数,它有个三个参数,idpropvalue

如果 value !='' 而且prop != 'tracks'collectionCopy[id][prop]=value;

如果 value !='' 而且prop == 'tracks'collectionCopy[id][prop].push(value);

如果 value == '' ,delete collectionCopy[id][prop];

谨记:函数返回的永远是整个对象。

提示
使用中括号操作符来 访问对象的变量属性
// Setup
var collection = {
2548: {
album: "Slippery When Wet",
artist: "Bon Jovi",
tracks: [ 
"Let It Rock", 
"You Give Love a Bad Name" 
]
},
2468: {
album: "1999",
artist: "Prince",
tracks: [ 
"1999", 
"Little Red Corvette" 
]
},
1245: {
artist: "Robert Palmer",
tracks: [ ]
},
5439: {
album: "ABBA Gold"
}
};
// Keep a copy of the collection for tests
var collectionCopy = JSON.parse(JSON.stringify(collection));

// Only change code below this line
function update(id, prop, value) {
if( value !='' && prop != 'tracks'){
    collectionCopy[id][prop]=value;
}
if( value !='' && prop == 'tracks'){
    collectionCopy[id][prop].push(value);
}
if(value == ''){
    delete collectionCopy[id][prop];
}

return collection;
}

// Alter values below to test your code
update(5439, "artist", "ABBA");

3、JavaScript 使用循环语句查找通讯录

我们有一个联系人列表,里面存储着不同联系人的数组对象。

函数 lookUpProfile 有两个预定义参数:firstName值和prop属性 。

该函数应检查firstName是实际联系人的firstName,给定的属性(prop)是该联系人的属性。

如果它们都存在,函数返回prop属性对应的值。

如果firstName 值不存在,返回 "No such contact"

如果prop 属性不存在,返回 "No such property"

//Setup
var contacts = [
{
"firstName": "Akira",
"lastName": "Laine",
"number": "0543236543",
"likes": ["Pizza", "Coding", "Brownie Points"]
},
{
"firstName": "Harry",
"lastName": "Potter",
"number": "0994372684",
"likes": ["Hogwarts", "Magic", "Hagrid"]
},
{
"firstName": "Sherlock",
"lastName": "Holmes",
"number": "0487345643",
"likes": ["Intriguing Cases", "Violin"]
},
{
"firstName": "Kristian",
"lastName": "Vos",
"number": "unknown",
"likes": ["Javascript", "Gaming", "Foxes"]
}
];

function lookUpProfile(firstName, prop){
// Only change code below this line
for(var i =0;i<contacts.length;i++){
     if(contacts[i].firstName ==firstName){
         if(contacts[i].hasOwnProperty(prop)){
             return contacts[i][prop];
         }
     else{
       return  "No such property";
   }
   } 
      
} return   "No such contact";

// Only change code above this line
}

// Change these values to test your function
lookUpProfile("Akira", "likes");

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
w3cschool提供了Javascript的离线文档,这是一个非常方便的资源,在没有网络连接的情况下也能查阅Javascript的相关知识。 首先,该离线文档包含了Javascript的基本语法、数据类型、运算符、函数、对象、事件等方面的知识。无论你是初学者还是有一定经验的开发人员,都可以从这些基础知识中获得帮助和指导。 其次,该离线文档提供了详细的API参考,包含了Javascript的内置对象和方法的详细说明,从而帮助开发人员了解如何正确地使用这些对象和方法。这是一个非常重要的部分,因为它提供了准确、全面的信息,可以帮助开发人员避免常见的错误和问题。 另外,该离线文档还提供了示例代码和实用的技巧,这些可以帮助开发人员更好地理解和应用Javascript的概念和技术。通过这些实例和技巧,开发人员可以更加深入地学习和掌握Javascript。 需要注意的是,虽然这是一个离线文档,但是它是静态的,没有实时更新的功能。因此,如果你想获得最新的Javascript知识和技术,建议还是去访问w3cschool的在线文档,以确保获取最新的信息和资源。 总之,w3cschool Javascript离线文档是一个非常有用的资源,它提供了Javascript的基础知识、API参考、示例代码和技巧,帮助开发人员学习和应用Javascript。无论是在线还是离线,都是非常值得推荐的学习工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值