微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery遍历筛选数组的几种方法和遍历解析json对象

jquery grep()筛选遍历数组

$().ready(
function(){
var array = [1,2,3,4,5,6,7,8,9];
var filterarray = $.grep(array,function(value){
return value > 5;//筛选出大于5的
});
for(var i=0;i<filterarray.length;i++){
alert(filterarray[i]);
}
for (key in filterarray){
alert(filterarray[key]);
}
}
);

jquery each()筛选遍历数组

$().ready(
function(){
var anObject = {one:1,two:2,three:3};//对json数组each
$.each(anObject,function(name,value) {
alert(name);
alert(value);
});
var anArray = ['one','two','three'];
$.each(anArray,function(n,value){
alert(n);
alert(value);
}
);
}
);

jquery inArray()筛选遍历数组

$().ready(
function(){
var anArray = ['one','three'];
var index = $.inArray(‘two',anArray);
alert(index);//返回该值在数组中的键值,返回1
alert(anArray[index]);//value is two
}
);

jquery map()筛选遍历数组

$().ready(
function(){
var strings = ['0','1','2','3','4','S','6'];
var values = $.map(strings,function(value){
var result = new Number(value);
return isNaN(result) ? null:result;//isNaN:is Not a Number的缩写
}
);
for (key in values) {
alert(values[key]);
}
}
);

js遍历解析json对象1

var json = [{dd:'SB',AA:'小编',re1:123},{cccc:'dd',lk:'1qw'}];
for(var i=0,l=json.length;i<l;i++){
for(var key in json[i]){
alert(key+':'+json[i][key]);
}
}

js遍历解析json对象2

有如下 json对象:
var obj ={”name”:”冯娟”,”password”:”123456″,”department”:”技术部”,”sex”:” 女”,”old”:30};
遍历方法

for(var p in obj){
str = str+obj[p]+',';
return str;
}

下面通过例子来说明下具体实现方法

JQuery拿取对象的方式

$(‘#id') :通过元素的id
$(‘tagName') : 通过元素的标签
$(‘tagName tagName') : 通过元素的标签名,eg: $(‘ul li')
$(‘tagName#id): 通过元素的id和标签
$(‘:checkBox'):拿取input的 type为checkBox'的所有元素:
Eg: <input type="checkBox" name="appetizers"
value="imperial"/>

$('span[price] input[type=text]') :拿取下面的input元素
<span price="3">
<input type="text" name="imperial.quantity"
disabled="disabled" value="1"/>
</span>
$('div',$(this).parents('div:first')):拿取该div的上(至少都是父节点)的第一个div节点
$('~ span:first',this): locates the first sibling of this that's a <span> element.

延迟加载js文件
$.getScript

例子:
Html文件:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>$.getScript Example</title>
<link rel="stylesheet" type="text/css" href="../common.css">
<script type="text/javascript"
src="../scripts/jquery-1.2.1.js"></script>
<script type="text/javascript">
$(function(){
$('#loadButton').click(function(){
$.getScript(//在Firefox/3.0.1中会出现一个错误(语法错误,定义的变量不起作用,ff2没问题)
'new.stuff.js'//,function(){$('#inspectButton').click()}
);
});
$('#inspectButton').click(function(){
someFunction(someVariable);
test()
});
});
</script>
</head>

<body>
<button type="button" id="loadButton">Load</button>
<button type="button" id="inspectButton">Inspect</button>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>$.getScript Example</title>
<link rel="stylesheet" type="text/css" href="../common.css">
<script type="text/javascript"
src="../scripts/jquery-1.2.1.js"></script>
<script type="text/javascript">
$(function(){
$('#loadButton').click(function(){
$.getScript(//在Firefox/3.0.1中会出现一个错误(语法错误,function(){$('#inspectButton').click()}
);
});
$('#inspectButton').click(function(){
someFunction(someVariable);
test()
});
});
</script>
</head>
<body>
<button type="button" id="loadButton">Load</button>
<button type="button" id="inspectButton">Inspect</button>
</body>
</html>

Js文件:

alert("I'm inline!");

var someVariable = 'Value of someVariable';

function someFunction(value) {
alert(value);
}

function test() {
alert('test');
}
alert("I'm inline!");
var someVariable = 'Value of someVariable';
function someFunction(value) {
alert(value);
}
function test() {
alert('test');
}

jquery数组处理:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Hi!</title>
<script type="text/javascript" src="../scripts/jquery-1.2.1.js">
</script>
<script type="text/javascript">
var $ = 'Hi!';
jQuery(function(){
alert('$ = '+ $);//这里的 $ 为 Hi!,把它变回jquery的符号:jQuery(function($){...}/这样就可以了
//alert(jQuery)

});
jQuery(function($){
//------------遍历数组 .each的使用-------------
var anArray = ['one',value) {
//do something here
//alert(n+' '+value);
});
var anObject = {one:1,three:3};
$.each(anObject,value) {
//do something here
//alert(name+' '+value);
});

//-----------过滤数组 .grep的使用------------
var originalArray =[99,101,103];

var bigNumbers = $.grep(originalArray,'a>100');//第2种写法,还可以用正则表达式来过滤
$.each(bigNumbers,value) {
//do something here
//alert(n+' '+value);
});

//------------转换数组 .map的使用------------
var strings = ['1','K',function(value){
var result = new Number(value);
return isNaN(result) ? null : result;//如果result不是数字则 返回null(返回null在这里相当于不返回)
});
$.each(values,value) {
//do something here
//alert(value);
});

var characters = $.map(
['this','that','other thing'],
function(value){return value.split('');}//分离字符串用返回给characters
);
//alert(characters.length);

//------------.inArray(value,array)的使用------------返回value在array下标的位置,如果value不在array中则返回-1
var index = $.inArray(2,[1,5]);
//alert(index);

//------------makeArray(obj)的使用------------将类数组对象转换为数组对象。
var arr = jQuery.makeArray(document.getElementsByTagName_r("div"));
//arr.reverse(); // 使用数组翻转函数
$.each(arr,value) {
//do something here
//alert(n+' '+value);
//alert(value.html());
});
var arr2 =$.unique(document.getElementsByTagName_r("div")); //获得唯一的对象,看API,说得很模
糊,http://docs.jquery.com/Utilities/jQuery.unique
alert();
$.each(arr2,value) {
//do something here
alert(n+' '+value);
});
});
</script>
</head>
<body>
<div>First</div><div>Second</div><div>Third</div><div>Fourth</div><div>Fourth</div>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Hi!</title>
<script type="text/javascript" src="../scripts/jquery-1.2.1.js">
</script>
<script type="text/javascript">
var $ = 'Hi!';
jQuery(function(){
alert('$ = '+ $);//这里的 $ 为 Hi!,把它变回jquery的符号:jQuery(function($){...}/这样就可以了
//alert(jQuery)
});
jQuery(function($){
//------------遍历数组 .each的使用-------------
var anArray = ['one',value) {
//do something here
//alert(name+' '+value);
});
//-----------过滤数组 .grep的使用------------
var originalArray =[99,value) {
//do something here
//alert(n+' '+value);
});
//------------转换数组 .map的使用------------
var strings = ['1',value) {
//do something here
//alert(value);
});
var characters = $.map(
['this',
function(value){return value.split('');}//分离字符串用返回给characters
);
//alert(characters.length);
//------------.inArray(value,array)的使用------------返回value在array下标的位置,如果value不在array中则返回
-1
var index = $.inArray(2,5]);
//alert(index);
//------------makeArray(obj)的使用------------将类数组对象转换为数组对象。
var arr = jQuery.makeArray(document.getElementsByTagName_r("div"));
//arr.reverse(); // 使用数组翻转函数
$.each(arr,value) {
//do something here
alert(n+' '+value);
});
});
</script>
</head>
<body>
<div>First</div><div>Second</div><div>Third</div><div>Fourth</div><div>Fourth</div>
</body>
</html>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


问题背景 最近小伙伴提了一个希望提高后台下拉列表可操作性的需求,原因是下拉列表选项过多,每次下拉选择比较费时费力且容易出错,硬着头皮啃了啃前端知识,网上搜寻了一些下拉列表实现的资料,这里总结一下。 P
// n位随机数生成 function randomNum(n) { let sString = &quot;&quot;; let strings = &quot;abcdefghijklmnopq
HTML是HyperText Markup Language的简称,中文名称:超文本标记语言,它是一种用于创建网页的 标准标记语言
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
JavaScript 是脚本语言,是一种解释性脚本语言(代码不进行预编译)
本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 一名开发者或设计师通常可以在一秒内指出优秀的设计,但对于糟糕的设计只需最多半
本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 Excel是我们办公中常用的工具 ,它几乎能为我们处理大部分数据,友好的交互
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 原文出处:https://blog.bitsrc.io/8-tips-for-an-awesome-sign
本文由葡萄城技术团队于博客园翻译并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 如果我们自己编写从URL中分析和提取元素的代码,那么有可能会比较痛苦
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 原文出处:https://blog.bitsrc.io/what-is-deno-and-will-it-r