[英]Passing an Object as an Argument in Javascript - But not simply an Argument but an argument built from variables
我正在將對象傳遞給函數。 下面是簡化的示例:
countyInfo(sales.NY2008);
對象是:
{countyName:"Albany",percentage:0.864789889,percentageComparison:40.18903649,sales:1222},
{countyName:"Allegany",percentage:0.789529462,percentageComparison:27.98874729,sales:149},
{countyName:"Broome",percentage:1.009475302,percentageComparison:63.64364553,sales:880},
{countyName:"Cattaraugus",percentage:0.874885092,percentageComparison:41.82554597,sales:276},
{countyName:"Cayuga",percentage:0.801267677,percentageComparison:29.89160156,sales:268},
{countyName:"Chautauqua",percentage:0.830185925,percentageComparison:34.5794701,sales:455},
{countyName:"Chemung",percentage:0.744919757,percentageComparison:20.75717391,sales:272},
{countyName:"Chenango",percentage:1.191003494,percentageComparison:93.07074993,sales:242},
{countyName:"Clinton",percentage:0.767315265,percentageComparison:24.38765663,sales:265},
{countyName:"Columbia",percentage:0.83461736,percentageComparison:35.29783949,sales:260},
{countyName:"Cortland",percentage:1.144086442,percentageComparison:85.46513794,sales:234},
它工作得很漂亮。
現在,我想由變量組成此參數。
var getLocation = "NY";
var getYear = "2008";
var getParameter= getLocation + getYear;
countyInfo(sales.getParameter)
當我傳遞字符串時,它不起作用。 但是,這怎么辦呢?
由於sales
似乎是一個對象,因此您可以使用索引符號來訪問成員。
也就是說, sales.NY2008
等同於sales["NY2008"]
。
所以,只要做
countyInfo(sales[getLocation + getYear]);
只需更改您的代碼即可使用方括號表示法訪問對象屬性,而不是點表示法
var getLocation = "NY";
var getYear = "2008";
var getParameter= getLocation + getYear;
countyInfo(sales[getParameter]);
點表示法:
括號符號:
有關詳細說明,請參考-
https://codeburst.io/javascript-quickie-dot-notation-vs-bracket-notation-333641c0f781
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.