引用类型(object、array)

基本类型值引用类型值是变量可能包含的两种不同数据类型的值。
基本类型值也就是布尔值、数值、字符串,以及两个特殊类型值null和undefined。
引用类型的值是引用类型的一个实例,而引用类型又包括object类型、array类型、date类型、regExp类型、function类型、基本包装类型、单体内置对象。

Object类型

创建object实例的方法:

var 变量名=new Object();
变量名.属性=“ ”;

var 变量名={属性 : “ ” };

访问对象属性时,一般都使用点表示法

对象.属性

也可使用方括号,属性以字符串的形式放在方括号中

对象[“属性”]

Array类型

数组的每一项都可以保存任何类型的数据。

创建数组的方法:

var 变量 = new Array();

new Array(6)表示的是数组的项目数,即length属性的值为6.

var 变量 = [数组项,数组项,数组项 ]

eg1. var color=[“red”, “blue”, “yellow”];
eg2. var num=[1,2,3,4,5];

通过设置数组的length属性,可以向数组添加或移除项。

var num = [1, 2, 3, 4];
num.length = 3;
alert( num[3] ); //undefined

var num = [1, 2, 3];
num.length = 4 ;
alert( num[3] ) ; //undefined

数组的常用方法
push(); 在数组后添加任意数量的项,并返回修改后的length值;
pop();获取数组中的最后一项并将其从原数组中移除,并返回修改后的length值;
shift();获取数组中的第一项并将其从原数组中移除,并返回修改后的length值;
unshift();在数组前端添加任意数量的项,并返回修改后的length值;
reverse();反转数组项的顺序;
sort();将数组项转换成字符串进行比较,并从小到大排列;
想要将数组按数值大小从小到大进行排列,只需将一个比较函数作为参数传递给sort()方法即可。

function compare( value1, value2 ){
return value2 - value1;
}

concat();与push()之间在数组后添加项不同,它是复制原数组,并将参数添加在副本数组的末尾,原数组不产生任何变化。
slice();可传入一个或两个参数,参数表示项在数组中的起始位置和结束位置,返回两个位置之间的所有项(不包括结束位置的项),原数组不产生任何变化。
splice();可传入两个或更多参数,第一个参数指定项的位置,第二个参数为删除项的数量,之后的参数为将要插入的项。该方法始终会返回删除的数组,没有删除则为空数组。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
有多种方法将对象转为数组。第一种方法是使用Object.values()方法,该方法可以返回给定对象自身的可枚举属性值的数组。例如,可以使用以下代码将对象转为数组: var data = {id:1,value:'值'}; var obj = data; var arr = Object.values(obj); console.log(arr); //[1, '值'] 第二种方法是使用for...in循环,该循环可以遍历对象的可枚举属性,并将属性值添加到数组中。例如,可以使用以下代码将对象转为数组: var data = {id:1,value:'值'}; var obj = data; var arr = []; for (var i in obj) { arr.push(obj[i]); } console.log(arr); //[1, '值'] 还有其他一些方法可以将对象转为数组,比如通过遍历对象的属性,然后使用push方法将属性值添加到数组中。例如,可以使用以下代码将对象转为数组: var obj = {a: 1, b: 2, c: 3}; var arr = []; for(var key in obj){ if(!obj.hasOwnProperty(key)){ continue; } var item = {}; item[key] = obj[key]; arr.push(item); } console.log(arr); //[{a: 1}, {b: 2}, {c: 3}] 此外,还可以定义两个函数来分别将对象的属性和属性值输出为数组。例如,可以使用以下代码将对象的属性输出为数组: function objOfPropertyToArr(object) { var arr = []; var i = 0; for (var item in object) { arr[i] = item; i++; } return arr; } console.log(objOfPropertyToArr(obj)); //["name", "age"] 同样,可以使用以下代码将对象的属性值输出为数组: function objOfValueToArr(object) { var arr = []; var i = 0; for (var item in object) { arr[i] = object[item]; i++; } return arr; } console.log(objOfValueToArr(obj)); //["oschina", "18"] 综上所述,可以通过Object.values()方法、for...in循环或自定义函数来将对象转为数组。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [JS object对象转为array数组](https://blog.csdn.net/weixin_39501680/article/details/122085997)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [object类型转换为Array类型](https://blog.csdn.net/weixin_30240349/article/details/98796113)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值