js获取数组里面的对象(js操作对象和数组对象 取key/value)

本文目录
js操作对象和数组对象 取key/value
var people = [
{ "name": "bob", "dinner": "pizza" },
{ "name": "john", "dinner": "sushi" },
{ "name": "larry", "dinner": "hummus" }
];
people.filter(function (person) {
if(person.dinner){
console.log(person.dinner)
}
if(person.name){
console.log(person.name)
}
});
var people1 = { "name": "bob", "dinner": "pizza" };
Object.keys(people1)
console.log(Object.keys(people1))
var jsonObj = {"1" : 50,"2" : 40,"3" : 40,"4" : 30,"5" : 20,"6" : 20,"7" : 20,"8" : 20,"9" : 20, "10" : 20};
var keyAry = ;
var valueAry = ;
for(var key in jsonObj){
keyAry.push(key);
valueAry.push(jsonObj);
}
console.log(keyAry);
console.log(valueAry);
如何获取一个js数组的第一个对象
1、js 一共有三种创建方法:1)使用内置对象。2)使用JSON符号。3)自定义对象构造 。
2、JavaScript可用的内置对象可分为两种: 1)JavaScript语言原生对象(语言级对象),如String、Object、Functi等。2)JavaScript运行期的宿主对象(环境宿主级对象),如window、document、body等。
上代码
var str = new String("实例初始化String"); var str1 = "直接赋值的String"; var func = new Function("x","alert(x)");//示例初始化func var o = new Object();//示例初始化一个Object
3、使用json符号
var somebooks = { book: }
4、自定义对象构造 创建高级对象构造有两种方式:使用“this”关键字构造、使用原型prototype构造。如:
function Girl() { this.name = "big pig"; this.age = 20; this.standing; this.bust; this.waist; this.hip; }
js 是否能根据对象的id直接从对象数组中获取该对象
我有一个想法就是首先遍历该集合,然后将id替换成有序的索引
for(var i = 0 ,i《list.length ,i++){
list.id=i;
}
通过该id的索引可以很方便的找出数组中对应的变量,
list
这样做适合于大量数据查找对应属性的操作,只需要遍历一遍,后续的所有查找动作都可以通过索引直接完成。
经过本人测试
find方法比直接遍历慢十倍,比直接通过索引查询慢一百倍,
综上,还不如直接用遍历来的快些!
测试代码如下:
《!DOCTYPE html》
《html》
《head》
《meta charset="utf-8"》
《title》菜鸟教程(runoob.com)《/title》
《/head》
《body》
《p》点击按钮返回符合大于输入框中指定数字的数组元素。《/p》
《p》最小年龄: 《input type="number" id="ageToCheck" value="18"》《/p》
《button onclick="myFunction()"》find方法点我《/button》
《button onclick="Fun()"》遍历方法点我《/button》
《button onclick="FunIndex()"》直接找的方法《/button》
《p》值: 《span id="demo"》《/span》《/p》
《p》《strong》注意:《/strong》 IE 11 及更早版本不支持 findIndex() 方法。《/p》
《script》
//测试结果很现实,遍历比find要快太多
var ages = ;
for(var i =0 ;i《1000000;i++){
ages.push(i);
}
function checkAdult(age) {
return age == document.getElementById("ageToCheck").value;
}
function myFunction() {
var start = new Date().getTime();
document.getElementById("demo").innerHTML = ages.find(checkAdult);
console.log("find查找耗时 :" +(new Date().getTime()-start))
}
function Fun() {
var start = new Date().getTime();
var value = document.getElementById("ageToCheck").value;
for(var i =0 ; i《ages.length ;i++){
if(i==value){
document.getElementById("demo").innerHTML =i;
console.log("直接遍历耗时 :" +(new Date().getTime()-start));
return;
}
}
}
function FunIndex(){
var start = new Date().getTime();
document.getElementById("demo").innerHTML =ages
console.log("数组索引查找耗时 :"+(new Date().getTime()-start));
}
《/script》
《/body》
《/html》
测试结果如下:
怎么获取js 数组中的对象的属性
如果这个数组不是json的话,就可以for(var i=0;i 《array.length;i++{}来获取数组中的每一个对象,然后在{}里添加:
if(typeof array == "object){
for(var key in array){
//这里的array就能遍历array数组里的对象的属性值了,key就是属性名,
}
}
如果最初的array也是个对象的话,就把for(var i=0;i 《array.length;i++{}改成for(var i in array){}就行了
js 取数组中某个对象的集合
var arr = [
{a:1,b:2,c:3},
{a:4,b:5,c:6},
{a:7,b:8,c:9}
];
arr1=;
arr.forEach(function(v){ arr1.push(v.a);});
console.log(arr1);

更多文章:
在from子句中可以出现(如何在from 子句中嵌套查询下面的语句在access中出错!)
2026年10月11日 05:20
countif函数统计个数怎么用(countif函数怎么用 详解Excel中countif函数的使用方法)
2026年10月11日 03:30
正则匹配数字之前的字符(正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式)
2026年10月11日 03:00
orlnsertbootmediinselected(我电脑开机显示这个是什么意思or insert boot media in select)
2026年10月10日 23:00
display的用法(display是什么意思 详解display的含义和用法)
2026年10月10日 22:00
html全部居中代码(怎么让网页居中显示,html如何让网页居中)
2026年10月10日 21:10




