前端串js对象数组给php 所用框架thinkphp

//js 对象
<script>
    person[]=new Object();
    person[0].firstname="Bill";
    person[0].lastname="Gates";
     person[1].firstname="Bill";
    person[1].lastname="Gates";
    //将对象转为json字符串
    var jsonstr=JSON.stringify(person);
    //传递给php
    $.post(‘url‘,{obj:jsonstr},function(data){},‘json‘);
</script>
//php 代码
public function get_json(){
    //获取json字符串
    //注意 用thinkphp 框架 最好不要用框架自带的I方法获取数据,因为I方法在过滤字符串的同时会把字符串内部的双引号转义,导致解析json失败 返回null.此时若用json_last_error()函数获取 介绍返回提示,返回值可能是4 表示语法错误。
    $str=$_POST[‘obj‘];
    //解析json
    $str=json_decode($str);
}
时间: 2024-07-30 18:48:49

前端串js对象数组给php 所用框架thinkphp的相关文章

JS 对象数组Array 根据对象object key的值排序sort,很风骚哦

有个js对象数组 var ary=[{id:1,name:"b"},{id:2,name:"b"}] 需求是根据name 或者 id的值来排序,这里有个风骚的函数 函数定义: function keysrt(key,desc) {   return function(a,b){     return desc ? ~~(a[key] < b[key]) : ~~(a[key] > b[key]);   } } 使用: var ary=[{id:1,nam

js对象数组按属性快速排序

前一篇<关于selector性能比赛>中提到,目测觉得在$("div,p,a")这样有逗号时,sizzle耗时异常(600多个元素,花了200ms),说是它可能没有优化ie下的排序.按所推荐的程序在IE下跑了下,的确,排序耗时很小. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 /* * 快速排序,按某个属性,或按“获取排序

js对象数组(JSON) 根据某个共同字段 分组

希望的是将下面的对象数组: [ {"id":"1001","name":"值1","value":"111"}, {"id":"1001","name":"值1","value":"11111"}, {"id":"1002",&q

js 对象数组去重问题

在项目中定义对象数组是非常常见的,这就免不了要对对象数组进行去重.当然不能简单的使用===来解决问题,因为这时候数组中的类型为对象类型,即使完全相同的两个对象也不相等的.下面的例子说明一切: {}==={}//fasle []===[]//fasle 所以应该使用其他方法来判断两个对象是否相等,能代表这个对象的唯一性的属性,比如id. 使用id举例: var arr=[ {id:01,name:'jack'}, {id:02,name:'tome'}, {id:01,name:'jack'},

js 对象数组的交集补集和并集

先易后难,先对最简单的一维数字数组求交并补 var a=[1,2,3,5,6]; var b=[1,2,6,7,8] // 交集 a.filter(item=>b.includes(item)); // 并集 [...new Set(a.concat(b))] // 补集 a.filter(item=>!b.includes(item)); 对象数组也相差无几,每个对象都有一个唯一的标识的id var a=[ {id:'001',name:'zhangsan'}, {id:'002',name

js对象数组操作之一:对象数组中对象去重的方法总结

在日常开发业务中,经常会有一个数组由多个对象构成,需要对这种数据结构进行操作,如下: const arr = [ { name:'tom', age:15 }, { name:'jack', age:18 }, { name:'tom', age:10 }, ...] 今天总结了一下 先说这种数据结构的去重方法,对于数组中的多个对象去除重复,需要设置布尔值来进行. 一.jquery方法 var oldArr = [ { name:'tom', age:15 }, { name:'jack', a

js 对象数组根据对象中的属性排序

function createComparisonFunction(propertyName){ return function(object1,object2){ var value1 = object1[propertyName]; var value2 = object2[propertyName]; if(value1 < value2){ return -1; }else if(value1 > value2){ return 1; }else{ return 0; } }; };

JS对象/数组/识别对象数组

一.对象: 1.对象创建: (1) var obj={}; (2) var obj= new Object();  obj.name="Wang",obj.age=12 (3) Object.create({}); 2.对象访问: (1) obj.a; (2) obj[a];  //a可以是相同的字符串,和数组: 3.对象方法: (1) obj.hasOwnPrototype("prop");    判断对象是否为自身,返回true:如为继承属性,false: (2

js 对象数组和对象的使用

数组 var arr = new Array(); //或者 var arr = []; //或者 var arr = [{index:'0'},{address:'1'}]; var obj_1 = { index:'1', index:'2'}; var obj_2 = { index:'3', index:'3'}; arr.push(obj_1,obj_2); //添加 var pop_data = arr.pop(); //删除并返回数组的最后一个元素. //遍历 for(var i=