草庐IT

JSON数据处理

全部标签

javascript - 获取函数内部异步函数的返回数据

我遇到了一个问题,因为chromeapi函数是异步的,我无法获得它的返回值。考虑以下代码。我正在使用angularjs$scope.storageGet=function(param){varreturnData;chrome.storage.local.get(param.storageName,function(data){returnData=data;});returnreturnData;};当我尝试这样调用它时:console.log($scope.storageGet({'storageName':'users'}));它在控制台打印'undefined'。我想看到的是存

javascript - JavaScript 对象表示法是正确的 JSON 吗?

这个问题在这里已经有了答案:why{key:value}["key"]doesn'twork?(1个回答)关闭8年前。如果在Chrome控制台中我运行正确的JSON:{"aaa":"bbb"}我得到:SyntaxError:Unexpectedtoken:如果我运行例如:{aaa:"bbb"}它不会提示。也可以在下面运行:aaa={"aaa":"bbb"}我认为正确的JSON必须将属性名称用引号括起来,那为什么会这样呢?JS对象符号不是正确的JSON吗?

javascript - 在数据表上显示图像

我正在使用服务器端处理来读取数据库表并将记录转换为Json文件,并将其传递给数据库表以显示数据。读取数据库并转成json:代码:Route::get('banner/list/banners/json/{id}',function(){$banner=DB::table('banner_creatives')->where('Id','=','53')->get();$recordsTotal=count($banner);$data['draw']=1;$data['recordsTotal']=$recordsTotal;$data['recordsFiltered']=$reco

javascript - 在什么情况下在数组中存储不同的数据类型在 Javascript 中有用?

我最近一直在学习一些javascript,发现你可以像这样在数组中存储不同的数据类型:varmyArray=[12,23.5,"hello",true];我有一些Java背景,这在Java中是不可能的,因为你必须声明数据类型,否则你会得到一个错误(intmyArray=blahblahblah)所以我的问题是,例如,在什么情况下您会使用this而不是对象。例子会很棒。谢谢。 最佳答案 任何非强类型的语言都是这种情况。您的数组成员可以是不同的原始类型,也可以是对象。在大多数情况下,您不想使用它,因为您的数组没有清晰的结构。你宁愿有这样

javascript - Angular 存储数据并重新加载数据表

我正在使用数据表:https://l-lin.github.io/angular-datatables和Bootstrap:https://angular-ui.github.io/bootstrap/这是我试图实现的目标:在使用modal从bootstrap添加数据并保存后,数据表将重新加载(无需重新加载当前路由)。这是我的modalCtrl:.controller('addModalCtrl',['$scope','$modalInstance','$http','AdminMenu','ResultService',function($scope,$modalInstance,$

javascript - 如何使用 jQuery 选择数据标题中的元素?

我有这样的html表单:如何从data-title中选择Gray/Silver?我已经编写了我的代码,但没有得到结果。这里vardata=$('.value').data('title');console.log(data);请帮助我。提前致谢 最佳答案 您的问题是data-title位于.value的子元素上。尝试:-vardata=$('.value>.color-box').data('title');console.log(data);或vardata=$('.color-box').data('title');consol

javascript - Vim 显示不带任何引号的 json 文件

我有一个经过验证的json文件,它将在Vim中显示时不带任何引号。它唯一正确显示json文件的时间是在可视模式下。我试过禁用eslint、jshint、youcompleteme操作系统MacVim7.4终端中的Vim7.4 最佳答案 内置的$VIMRUNTIME/syntax/json.vim使用Vim的隐藏功能来隐藏引号,大概是为了去除不必要的困惑。您必须通过将'conceallevel'选项设置为2或3来启用隐藏;默认值为0(关闭)。同样,由于'concealcursor'设置,您会在可视模式下看到引号。在JSON文件中,检查

javascript - Vue.js 2,从指令更改数据

使用单文件组件,如何从指令更改数据属性?例如,我有...exportdefault{name:'app',data:function(){return{is_loading:true}},directives:{do_something:{bind:function(el,binding,vnode){//Changetheis_loadingproperty}}}}起初我以为我可以做this.is_loading=false但this是undefined。 最佳答案 要在指令中引用this,您可以简单地使用vnode.contex

javascript - 使用 Typescript 将对象的 JSON 数组转换为字符串数组

我正在使用Angular2(最新版本)。我正在尝试转换一个JSON数组,即jsonObject=[{"name":"BillGates"},{"name":"MaxPayne"},{"name":"Trump"},{"name":"Obama"}];到一个字符串数组并只存储值,即arrayList:[string]=[''];数组。我尝试使用Stringify方法但没有成功。 最佳答案 这应该可以完成工作:names:string[]=jsonObject.map(person=>person.name);//=>["BillGat

javascript - JavaScript 是单线程的吗?如果没有,我如何获得对共享数据的同步访问?

我有一个包含DIV的网页,其中包含一个mouseover处理程序,旨在显示弹出信息气泡。我不希望一次显示多个信息气泡。但是当用户在两个项目上快速移动鼠标时,有时会出现两个气泡。这不应该发生,因为显示弹出窗口的代码取消了之前的弹出窗口。如果这是一个多线程系统,那么问题就很明显了:有两个线程试图显示一个弹出窗口,它们都取消了现有的弹出窗口,然后弹出了自己的弹出窗口。但我假设JavaScript始终是单线程运行的,这会阻止这种情况发生。我错了吗?事件处理程序是否异步运行,在这种情况下我需要同步访问共享数据,或者我应该在库代码中寻找错误以取消弹出窗口?编辑添加:有问题的图书馆是SIMILETi