当前位置:首页 » 数据仓库 » 为什么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>