JSON中讓key作為引數傳入的方法

2022-05-14 06:52:54 字數 1190 閱讀 8619

乙個字串作為key,乙個陣列作為value

varkey ="mykey";

varvalues =newarray();

values.push(a);

values.push(b);

目標:json = ;

但是,"mykey"是作為引數傳入的,不能直接寫死,而json =; 的結果是不滿足要求,而json還不支援

json = ;這種格式,所以,想直接把key作為引數傳入的思路是不行的

解決方法如下:

第一步:先寫乙個字串

varstringjson ='';

第二步:將字串轉換為json物件,方法有兩種

1.使用json.parse(),但是此種方法需要較高版本的瀏覽器支援,但是

提供了乙個json.js,就可以支援低版本的瀏覽器也可以在

上獲取到這個js,一般現在用json2.js

var json = json.parse(stringjson);

2.使用eval(),但是此種方法不是很安全

varjson = eval('('+stringjson+')');

//注:主意格式要求

第二步之後,json的值就變為的形式了

第三步:給json重新賦值

json[key]= values;

在第三步之後,json的值就變為的形式了,達到目標要求

注:參考

json物件和字串之間的相互轉換 

JSON中讓key作為引數傳入的方法

乙個字串作為key,乙個陣列作為value varkey mykey varvalues newarray values.push a values.push b 目標 json 但是,mykey 是作為引數傳入的,不能直接寫死,而json 的結果是不滿足要求,而json還不支援 json 這種格式...

std的vector 作為引數傳入或者作為返回值

引數 std vector 作為引數傳入,是值傳遞,vector本身,及vector內的所有元素都會複製一遍。得不償失,可以使用引用傳遞。即建議寫成 rtype func ptype p1,vector p2,返回值 std vector作為函式返回值,是不會建立新vector物件的。函式內返回的跟...

方法名稱作為引數傳入函式中

定義委託,它定義了可以代表的方法的型別 public delegate void greetingdelegate string name class program private static void chinesegreeting string name 注意此方法,它接受乙個greetin...