js中關於改變物件屬性值迴圈push的問題

2021-04-14 05:43:27 字數 3902 閱讀 5080

1樓:匿名使用者

var dc=;

var dc1 =;

for(var i =0;i<5;i++));

}傳址 和傳值的問版題權

2樓:匿名使用者

var dc = ;

var dc1 = }

};for (var i = 0; i < 5; i++)for (var i = 0; i < 5; i++)

js如何動態迴圈給陣列名加入變數值 100

3樓:夏侯僧

陣列本身就是一copy個變數 你說的這種情況不可以吧!

但是你可以換一個思路啊。例如:

var obj = {}

for( var i = 0;i<3;i++)//呼叫

console.log(obj["test1"])for( var i = 0;i<3;i++)不知道你的問題我理解的對不對。

4樓:匿名使用者

做過給copy

物件動態新增屬性,不知道能不能滿足你的需求:

var arr=;

for(var i=0;i<3;i++)

賦值後可以用arr.row0[0]來呼叫。

5樓:匿名使用者

不可以直接使來用。

不能使用變數作為自變數名bai

,據我瞭解沒有哪du一種語言可以這麼幹。zhi你可以使用二維陣列dao來賦值

var array=new array();

for(var i=0;i<3;i++)

或者還有另一種方案用eval,它會把字串當做表示式執行eval("var test" + i + "=" + i);

js怎麼迴圈出變數,然後一個個儲存到陣列中?

6樓:何宜校

舉個簡單例子,希望你能明白,

1、下面輸出結果是"jim",而不是"tom",是因為陣列中儲存的都是

內指向json物件a的地址,容

dd[0],dd[1],dd[2],dd[3]物件指向的記憶體地址相同,

當修改其中一個dd[0]的屬性值的時候,陣列所有元素指向的物件屬性值都改變了。

var dd = ;

var a = ;

for (var i = 0; i <4; i++)dd[0].cname = "jim";

alert(dd[2].cname);

2、下面輸出結果是0,而不是1,

是因為陣列元素dd[0],dd[1],dd[2],dd[3]對應的記憶體地址都不同,互不干擾。

var dd = ;

var a = 0;

for (var i = 0; i <4; i++)dd[0]=1;

alert(dd[2]);

希望對你有幫助!

7樓:果不理

var students=[,,

,]var arr=;

for(var i=0;i

8樓:瑚一刀

定義陣列,在迴圈中使用put方法就可以了。

js 一個物件的屬性名是一個變數怎麼處理?

9樓:幫助

var obj=;

var key='testkey';

console.log(obj[key]);//使用方括號訪問

10樓:好程式設計師

目標:js的屬性名可以使用變數

舉例:js物件object,當賦給該物件屬性的時候可以採用以下方式

**如下:

var object;

object.prop1 = "value1";

object.prop2 = "value2";

也可以採用如下方式:

**如下:

object.push();

object.push();

在這裡prop1 作為屬性名稱,可以直接用,也可以加上引號,比如:

**如下:

object.push();

表達的含義都是一樣的,也就是說,prop1只能作為常量被識別,即使它是個變數也沒用,例如:

複製** **如下:

var prop1 = "prop2";

object.push();

這樣通過object訪問prop2會出現什麼情況呢?比如:

**如下:

alert(object.prop2)

不用問,當然是undefined,而訪問object.prop1卻是"value1"

原因已經說過了,無論加不加引號,屬性一律當成常量對待.再舉一個例子:

**如下:

var arr=;

arr['js']='jquery';

arr['css']='oocss';

var obj={};

for(var i in arr)

alert(obj.js);

讀者不放猜一下alert會列印什麼?

當然是undefined.

大家再猜一下,如果alert(obj.i)會列印什麼?

當然是oocss,為什麼?因為obj現在只有一個屬性i,而且通過兩次迴圈,obj.i前面的被後面的覆蓋掉.

如果有需求,需要動態新增屬性,也就是說,屬性也必須是一個變數才行,如上例**,alert(obj.js)不是undefined,而是jquery,該如何修改呢?

**如下:

var arr=;

arr['js']='jquery';

arr['css']='oocss';

var obj={};

for(var i in arr)

alert(obj.js);

就是那麼簡單!把物件obj當成一個陣列來對待,它支援使用類似於下標形式的方法來把屬性和屬性值賦給物件.但是,物件依然是物件,obj.length是不存在的.

11樓:匿名使用者

物件訪問屬性有兩種方法

1、obj.paramname,使用.訪問2、obj[paramename],使用中括號屬性名訪問如:stu = ;

var age1 = stu.age;

var age2 = stu["age"];

alert(age1 == age2);//true所以,你的應該修改為

if(url[1])}

js動態為物件新增屬性和方法 80

12樓:

簡單的補個例子上,希望樓主能把addmethods的第二個引數大致有幾種情況寫清楚。

我再版把我的答案補充完整

權//判斷型別的方法

var istype = function(object)var addmethods = function(obj, arr)

//todo}

13樓:poper小艾

用 物件[屬性名]=xx的方式

如 person={};

for xx in xx

person[property]=「」「

14樓:勤奮的

var str = "";

var json_obj = eval('('+str+')');

15樓:匿名使用者

sq111433 回得的很對

16樓:匿名使用者

var obj = {};//一個js物件obj.test = function()obj.a = 5;//新增屬性

你的補充問題其實是沒有意義專的,因為js本來就屬是動態的,它可以給任何物件在任何時候新增屬性和方法

JS怎樣才能根據屬性的值,找到該物件

獲取所有 input var input document.getelementsbytagname input for var i 0 i input.length i 可以通過元素在集合中的位置找到 你bytagname之後就獲得了input元素集,那麼bytagname input 0 就是b...

判斷JS物件是否擁有某屬性

1,in 運算子 var obj alert name in obj true alert tostring in obj true 可看bai到無論是name,還是原形du鏈上的zhitostring,都能檢測到返回 daotrue。2,hasownproperty 方法 var obj obj....

js中如何獲取css屬性,JS中如何獲取CSS屬性

這個是獲取不到的,除非這樣的內樣式才可以得到。document.getelementbytagname h table style.csstext 你得先抓取到某個應用css屬性的物件,然後呼叫。舉個例子比較好說明。比如以下的html 然後用getelementbyid testdiv style來...