freeCodeCamp/curriculum/challenges/chinese-traditional/02-javascript-algorithms-an.../basic-javascript/accessing-object-properties...

2.3 KiB
Raw Blame History

id title challengeType videoUrl forumTopicId dashedName
56533eb9ac21ba0edf2244c8 使用方括號表示法訪問對象屬性 1 https://scrimba.com/c/cBvmEHP 16163 accessing-object-properties-with-bracket-notation

--description--

訪問對象屬性的第二種方式是方括號表示法([])。 如果你想訪問的屬性名中包含空格,就必須使用方括號表示法來獲取它的屬性值。

當然,如果屬性名不包含空格,也可以使用方括號表示法。

這是一個使用方括號表示法讀取對象屬性的例子:

var myObj = {
  "Space Name": "Kirk",
  "More Space": "Spock",
  "NoSpace": "USS Enterprise"
};
myObj["Space Name"];
myObj['More Space'];
myObj["NoSpace"];

myObj["Space Name"] 將會是字符串 KirkmyObj['More Space'] 將會是字符串 Spock,並且myObj["NoSpace"] 將會是字符串 USS Enterprise

注意,如果屬性名中包含空格,就必須使用引號(單引號或雙引號)將它們包裹起來。

--instructions--

使用方括號讀取 testObjan entreethe drink 的屬性值,並分別將它們賦值給 entreeValuedrinkValue

--hints--

entreeValue 應該是一個字符串。

assert(typeof entreeValue === 'string');

entreeValue 的值應該爲字符串 hamburger

assert(entreeValue === 'hamburger');

drinkValue 應該是一個字符串

assert(typeof drinkValue === 'string');

drinkValue 的值應該爲字符串 water

assert(drinkValue === 'water');

你應該使用兩次方括號

assert(code.match(/testObj\s*?\[('|")[^'"]+\1\]/g).length > 1);

--seed--

--after-user-code--

(function(a,b) { return "entreeValue = '" + a + "', drinkValue = '" + b + "'"; })(entreeValue,drinkValue);

--seed-contents--

// Setup
var testObj = {
  "an entree": "hamburger",
  "my side": "veggies",
  "the drink": "water"
};

// Only change code below this line

var entreeValue = testObj;   // Change this line
var drinkValue = testObj;    // Change this line

--solutions--

var testObj = {
  "an entree": "hamburger",
  "my side": "veggies",
  "the drink": "water"
};
var entreeValue = testObj["an entree"];
var drinkValue = testObj['the drink'];