當前位置:首頁 » 數據倉庫 » 為什麼js傳入一個對象配置
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

為什麼js傳入一個對象配置

發布時間: 2022-04-22 21:37:02

1. js裡面怎麼動態的為對象添加屬性

添加屬性用setAttribute()方法,可以傳入兩個參數,第一個是屬性名稱,第二個是要設置的屬性值

varli=document.getElementsByTagName('li')[0];
//設置li屬性,如data-falg,設置為true
li.setAttribute("data-falg","true");

也可以獲取屬性用getAttribute(),傳入一個參數,是想獲取的屬性名稱,返回的是該屬性的值

2. javascript 動態變數名(傳入一個對象,利用這個對象給標簽添加css樣式)

修改後的代碼:

function addcss(css) {
var div = document.createElement("div");
for (var i in css) {
div.style.cssText += i+":"+css[i];
}
document.body.appendChild(div);
}


你的代碼存在以下問題:

1、創建元素的方法是createElement(),而不是create()

2、元素創建以後沒有附加到已有節點上

3、i不是style的屬性

3. 關於js中一個對象當做參數傳遞是按值傳遞還是按引用傳遞的個人看法

是傳值的,對象類型的值其實是個內存地址,比如你家的地址,你告訴人家你家地址是xx路xx號,別人就根據這個地址找到你家的位置,所以說xx路xx號就是一個對象類型的值,不管這個值復制多少遍,他所指向的都是同一個地方,也就都會找到那個地方的唯一一個對象

這就是對象類型的值是地址而不是真正對象本身

4. javascript(js)傳對象

說明:

1、window.location可簡寫為location.

2、getSearchAsArray方法為解析location字串。即將字元串傳遞的名-值對(按傳統的name1=value1&name2=value2)轉換到一個索引名是名字的數組。

參數為window.location字串。

其中escape()函數將數據轉換成url適用的格式,特別是當內容包含空格時。

網上還有另一種方法來解析location,即正則表達式,大家有興趣可以搜索一下。

3、location具體可以容納的字串長度,是否和地址欄的長度相同,有興趣的朋友可以測一下。

//======================以下是頁面源碼=======================

第一個頁面index.html代碼如下:

<HTML>
<HEAD>
<TITLE> window.search test </TITLE>
</HEAD>
<BODY>
<INPUT TYPE="button" onClick="doclick()">
<SCRIPT LANGUAGE="JavaScript">
<!--
function doclick()
{
location="test.html?a=1&b=2&c=3";
}
//-->
</SCRIPT>
</BODY>
</HTML>

第二個頁面test.html

<HTML>
<HEAD>
<TITLE> test.html </TITLE>
</HEAD>

<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
var srchStr=location.search;

load();

function load()
{
if(srchStr)
{
var srchArray=getSearchAsArray(srchStr);
alert(srchArray["a"]);
alert(srchArray["b"]);
alert(srchArray["c"]);
}
}

function getSearchAsArray(srchStr)
{
var results=new Array();
var input=unescape(srchStr.substr(1));
if(input)
{
var srchArray=input.split("&");
var tempArray=new Array();

for(var i=0;i<srchArray.length;i++)
{
tempArray=srchArray[i].split("=");
results[tempArray[0]]=tempArray[1];
}
}

return results;
}
//-->
</SCRIPT>
</BODY>
</HTML>

這是接收普通參數,數組應該差不多,只是思想,你看看吧

5. JS中怎麼將多個對象添加到一個對象中

這個只能用集合來實現。
在JavaScript中,常用Array來存儲和操作對象:

Array:
新建:var ary = new Array(); 或 var ary = [];
增加:ary.push(value);
刪除:delete ary[n];
遍歷:for ( var i=0 ; i < ary.length ; ++i ) ary[i];

6. JS 如何傳遞對象參數

<html>
<head></head>
<script>
function check(val)
{
alert(document.getElementById(val).value);
}
</script>
</head>
<body>
<input name="textfield" type="text" value="888" id="test">
</body>
<script>
check("test");
</script>
</html>

這樣是可以的,你那樣在還沒有運行到<input name="textfield" type="text" value="888" id="test"> 時就調用check肯定獲取不到對象啊

或者這樣
<html>
<head></head>
<script defer>
function check(val)
{
alert(document.getElementById(val).value);
}
check("test");
</script>
</head>

<body>
<input name="textfield" type="text" value="888" id="test">
</body>
</html>

加上defer表示載入完文檔以後才開始執行js

7. js如何給一個對象多加一個屬性並賦值

1、js創建一個對象或者在原有對象上添加一個已知屬性,並給這個屬性賦值,寫法如下:
let obj = {'a1':'a1'};obj['a2'] = 'a2';console.log(obj);//輸出{'a1':'a1','a2':'a2'};

2、添加一個變數屬性,並賦值變數,寫法如下:
function add(name,value){let obj = {"a1":"a1"};obj[name] = value;//返回參數console.log(obj);//{"a1":"a1","b1":"b1"}}add("b1","b1");

8. js傳參數,是不能做到修改一個對象的屬性嗎

可以,不用var修飾,代表這個變數是全局變數。看上面列子,name其實就是window對象的一個屬性,也就是全局變數。

9. js 怎麼傳遞一個對象

代碼示例:
<script>
function as(){
var tb = document.getElementById("tb");
var tbdy = document.createElement('tbody');
var tr,td;
var aElem;
for(var k=0;k<3;k++){
tr = document.createElement('tr');
td = document.createElement('td');
aElem = document.createElement('span');
setEvent(aElem);
aElem.innerHTML = "---"+k;
td.appendChild(aElem);
tr.appendChild(td);
tbdy.appendChild(tr);
}
tb.appendChild(tbdy);
}
function setEvent(aElem) {
aElem.attachEvent("ondblclick",function(){d(aElem);});
}
function d(x){
alert(x.innerHTML);
}
as();
</script>