js 数组值改变?

JavaScript022

js 数组值改变?,第1张

let temp = [{

url: "https://zhidao.baidu.com/new?word=&ie=GBK&entry=common_header",

isUse: 0

},

{

url: "https://zhidao.baidu.com/new?word=&ie=GBK&entry=common_header",

isUse: 0

},

{

url: "https://zhidao.baidu.com/new?word=&ie=GBK&entry=common_header",

isUse: 0

}

]

// 方法1

temp = Array.from(temp, item =>{

item.isUse = 1

return item

})

// 方法2

temp = temp.map(item =>{

item.isUse=1

return item

})

// 方法3

temp.forEach(item =>item.isUse = 1)

console.log(temp)

JavaScript中,由于数组长度是可变的,因此可以通过直接定义新的成员而将其添加到数组中:

var o = [2,3,5]

o[3] = 7

console.log(o)//[2,3,5,7]

除了这种方法,还可以通过使用push()语句来达到相同的目的:

o.push(11)

console.log(o)//[2,3,5,7,11]

o.push(13,17)

console.log(o)//[2,3,5,7,11,13,17]

如果需要在数组开头添加新的成员,可以使用unshift()语句:

o.unshift(2014)

console.log(o)//[2014,2,3,5,7,11,13,17]

o.unshift(2013, 2012)

console.log(o)//[2013,2012,2014, 2,3,5,7,11,13,17]

与push()对应,如果需要从数组末尾删除一个成员,可以使用pop()语句,pop()语句将返回这个被删除的成员,而数组长度将减少1:

var p = o.pop()

console.log(p)//17

console.log(o.length)//9

与unshift()对应,如果需要从数组开头删除一个成员,可以使用shift()语句,shift()语句将返回这个被删除的成员,而数组长度将减少1:

var s = o.shift()

console.log(s)//2013

console.log(o.length)//8

除了shift()语句和pop()语句,还可以通过delete操作符来删除数组中的成员。与shift()和pop()不同的是,delete操作后数组的length属性将保持不变,也即数组将变得不连续。

JavaScript中还可以通过设定数组的length属性来对数组进行修改:当length值小于数组成员数时,JavaScript将对数组进行截取;当length值大于数组成员数时,JavaScript会将数组变得不连续。如果length值只读,那么在数组中直接定义新成员的操作将会失败:

console.log(o)//[2012,2014, 2,3,5,7,11,13]

o.length = 2

console.log(o)//[2012,2014]

o.length = 4

console.log(o)//[2012,2014,undefined,undefined]

var a = [1,2,3]

Object.defineProperty(a, "length", {writable:false})

a[3] = 4

console.log(a)//[1,2,3]

后台获取ajax参数后,可以通过参数查询数据库,返回一个javabean对象,然后转换成json格式返回页面:

ajax部分:

$(function(){

$("#userlist a").bind("click",function(){

var hol = $(this).attr("rel")

var data = "action=getlink&id="+hol

$.getJSON("server.php",data, function(json){

$("#name").html(json.name)

$("#sex").html(json.sex)

$("#tel").html(json.tel)

$("#email").html(json.email)

})

})

})

php后台处理部分:

后台server.php得到前端的Ajax请求后,通过传递的参数连接数据库并查询用户表,将相应的用户信息转换成一个数组$list,最后将数组转换成JSON数据。关于PHP与JSON的操作可以查看本站收集的文章:PHP中JSON的应用。以下是server.php的详细代码,其中数据连接部分省略:

include_once("connect.php")//连接数据库

$action=$_GET[action]

$id=intval($_GET[id])

if($action=="getlink"){

$query=mysql_query("select * from user where id=$id")

$row=mysql_fetch_array($query)

$list=array("name"=>$row[username],"sex"=>$row[sex],"tel"=>$row[tel],"email"=>$row[email])

echo json_encode($list)

}