簡體   English   中英

Javascript 分配有問題:數組和 object 迭代但我不知道解決方案是什么,我已經嘗試了一切

[英]Having a problem with a Javascript assignment: Array and object iteration but I have no idea what the solution is, I have tried everything

任務:遍歷數組

在本練習中,您將使用 for....of 循環遍歷數組和對象自身的屬性。


第 1 步:給您一系列乳制品:

var dairy = ['cheese', 'sour cream', 'milk', 'yogurt', 'ice cream', 'milkshake']

創建一個名為 logDairy 的logDairy 在其中,控制台使用 for...of 循環記錄乳品數組中的每個項目。
預期的 output 應該是:

cheese
sour cream
milk
yogurt
ice cream
milkshake

第 2 步。您將獲得以下起始代碼:
 const animal = { canJump: true }; const bird = Object.create(animal); bird.canFly = true; bird.hasFeathers = true;

創建一個名為birdCan的 function ,在其中使用 for...of 循環遍歷鳥對象的屬性和控制台日志。 請記住,您需要控制台記錄每個鳥對象屬性的鍵和值。


步驟 3.使用與任務 2 相同的起始代碼,創建名為“animalCan”的 function,並在其中循環遍歷鳥 object 及其原型 - 動物 ZA8CFDE6331BD59EB2AC96F891 中的所有屬性... .

我的答案:

 // Task 1 var dairy = ['cheese', 'sour cream', 'milk', 'yogurt', 'ice cream', 'milkshake']; function logDairy(items) { for (const element of items) { console.log(element); } } console.log(logDairy(dairy)); // Task 2 const animal = { canJump: true }; const bird = Object.create(animal); bird.canFly = true; bird.hasFeathers = true; function birdCan(items){ for (let [key, value] of Object.entries(items)) { console.log(key, value); } } console.log(birdCan(animal)); // Task 3 function animalCan(items) { for (let [key, value] in Object.entries(items)) { console.log(key, value); } } console.log(animalCan(animal));


運行代碼后出現此錯誤:
 FAILED: Console logged expected values for logDairy - returned TypeError: items is not iterable but expected cheesesour creammilkyogurtice creammilkshake FAILED: Console logged expected values for birdCan - returned TypeError: Cannot convert undefined or null to object but expected canFly: truehasFeathers: true FAILED: Console logged expected values for animalCan - returned TypeError: Cannot convert undefined or null to object but expected canFly: truehasFeathers: truecanJump: true
var dairy = [
    "cheese",
    "sour cream",
    "milk",
    "yogurt",
    "ice cream",
    "milkshake",
];

function logDairy(array) {
    for (const item of array) {
        console.log(item);
    }
}

logDairy(dairy);

const animal = {
    canJump: true,
};

const bird = Object.create(animal);

bird.canFly = true;

bird.hasFeathers = true;

function birdCan(myObject) {
    for (let [key, value] of Object.entries(myObject)) {
        console.log(key, value);
    }
}
birdCan(bird);

function animalCan(myObject) {
    const props = Object.keys(Object.getPrototypeOf(myObject)).concat(
        Object.keys(myObject)
    );
    for (const prop of props) {
        console.log(prop);
    }
}


animalCan(bird);

// 任務1

var milk = ['奶酪', '酸奶油', '牛奶', '酸奶', '冰淇淋', '奶昔'];

function logDairy() {

for (prop of Object.keys(dairy)){

    console.log(dairy[prop]);
}

}

日志乳制品();

// 任務 2

常量動物 = {

可以跳:真

};

常量鳥 = Object.create(動物);

鳥.canFly = true;

鳥.hasFeathers = true;

function 鳥罐(){

for (prop of Object.keys(bird)) {

    console.log(`${prop}: ${bird[prop]}`);
 }

} 鳥可以();

// 任務 3

function animalCan() {

for (prop in bird) {

    console.log(`${prop}: ${bird[prop]}`);
 }

} 動物可以();

您可以使用以下代碼。 我已經提交了作業並獲得了 100/100。 希望這對你有用。 快樂的編碼...

 // Task 1 var dairy = ['cheese', 'sour cream', 'milk', 'yogurt', 'ice cream', 'milkshake']; function logDairy() { for (const element of dairy) { console.log(element); } } console.log(logDairy(dairy)); // Task 2 const animal = { canJump: true }; const bird = Object.create(animal); bird.canFly = true; bird.hasFeathers = true; function birdCan() { for (keys of Object.keys(bird)) console.log(keys,": ", bird[keys]); } birdCan(); // Task 3 function animalCan() { for (prop in bird) { console.log(prop,": ", bird[prop]); } } animalCan();

希望這可以幫助。 Coursera 評分器會查看細粒度級別,即使冒號的間距也可能構成錯誤答案,並導致您的作業失敗,即使控制台沒有記錄任何錯誤。

// Task 1
var dairy = ['cheese', 'sour cream', 'milk', 'yogurt', 'ice cream', 'milkshake'];

function logDairy() {
    for (const element of dairy) {
    console.log(element);
    
    }
}

console.log(logDairy(dairy));

// Task 2

const animal = {
    canJump: true
};

const bird = Object.create(animal);
bird.canFly = true;
bird.hasFeathers = true;

function birdCan() {
    for (keys of Object.keys(bird))
        console.log(keys,": ", bird[keys]);
}


    
birdCan();


     
// Task 3

function animalCan() {
    for (prop in bird) {
        console.log(prop,": ", bird[prop]);
    }
}
animalCan();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM