`
huruqing
  • 浏览: 4155 次
社区版块
存档分类
最新评论

js在不同模块间传递数据

阅读更多
之前的项目中,从A页面跳转到B页面,或者从A模块跳转到B模块的时候,如果需要传递数据,一般会使用sessStorage或者localStorage来传数据,一下方法对这个操作进行了封装; 
  window.app = {
        setItem: function(app_key,value){
            if(typeof app_key != "string")return false; //第一个参数必须是字符串
            if(typeof value === "object"){ //第二个参数如果是对象就转成字符串
                value = "object" + JSON.stringify(value);
            }
            localStorage.setItem(app_key,app_key);  //把key存到localStorage
            var app_value = app_key + "V"
            localStorage.setItem(app_value,value);  //把value存到localStorage
        },
        getItem: function(app_key){
            if(localStorage[app_key] == app_key){ //比对传进的参数是否
                                                  //跟localStorage中的key相同
                var app_value = app_key + "V";
                var value = localStorage[app_value];
                if(value.substr(0,6) === "object"){
                    var valueStr = value.substr(6);
                    value = JSON.parse(valueStr);
                }
                localStorage.removeItem(app_key);    //删除localStorage中对应的
                localStorage.removeItem(app_value);  //key和value也是说一存一取
                return value;                        //取完就删掉如果你要一存多取
            }                                        //请直接使用localStorage
        }                      
    }
分享到:
评论

相关推荐

    深化浅析JavaScript中数据共享和数据传递_.docx

    - 导入/导出(模块系统):在ES6引入模块系统后,可以使用`import`和`export`关键字在模块间传递数据,确保数据仅在需要的地方可见。 在安全方面,需要注意的是,不当的数据共享和传递可能导致隐私泄露、状态混乱...

    源代码——MFC的WebBrowser控件 C++与JavaScript之间数据交互传递

    可能包括了C++向JavaScript传递数据,例如传递地理位置信息,让JavaScript绘制地图;以及JavaScript向C++发送请求,比如用户在网页上点击某个位置,C++接收到坐标后进行特定的处理。 总之,通过MFC的WebBrowser控件...

    js事件广播实现数据传递

    在JavaScript开发中,事件机制是一种非常重要的编程模式,它可以用于在不同的组件或模块之间进行通信。特别是在复杂的前端应用中,合理利用事件机制能够有效地提高代码的可维护性和扩展性。本文将深入探讨如何通过...

    React Native原生模块向JS传递数据的几种方式(Android)

    总结一下,React Native中原生模块向JS传递数据主要有三种方式:Callbacks、Promises 和 Event Emitter。Callbacks是最基础的异步处理方式,Promises 提供了更优雅的错误处理和链式调用,而Event Emitter则允许模块...

    北大青鸟ACCP5.0 S2 三层架构 List层间数据传递代码实例

    在描述的"List层间数据传递"中,我们指的是在不同层之间传递包含List类型的数据。List是一种常见的数据结构,它可以存储一组有序的元素,通常用于表示集合或数组。在三层架构中,可能需要将表现层接收到的用户输入...

    Javascript模块化编程(Require.js)

    JavaScript模块化编程是一种组织代码的方式,它使得代码更易于维护、重用和协作。Require.js是JavaScript的一个模块加载器,它引入了AMD(Asynchronous Module Definition)规范,为JavaScript提供了异步加载模块的...

    javascript 分页模块

    JavaScript 分页模块是一种在网页中实现数据分页功能的技术,主要应用于大数据量的展示场景,如用户列表、文章列表等。这种模块通过将大量数据分割成小块(每块为一页),让用户能够逐页浏览,而不是一次性加载所有...

    js接收串口数据,测试过完全可用的,不骗人

    描述中提到,该应用被用来接收GPS数据,这通常涉及到物联网(IoT)的应用场景,通过串口将GPS模块获取的位置信息传递给JavaScript进行处理。"mscomm32.ocx"是微软提供的一个ActiveX控件,用于串行通信,这表明这个解决...

    Javascript小系统模块

    JavaScript小系统模块是一个用于用户管理的实践项目,它展示了如何在Web开发中使用JavaScript来构建一个功能性的模块。在这个模块中,我们可能会涉及到以下几个关键知识点: 1. **基础语法**:JavaScript是基于...

    javascript的后台管理模块

    这种功能通常通过AJAX(Asynchronous JavaScript and XML)实现,通过异步请求获取服务器端的数据,然后在前端动态渲染菜单项,确保用户只能看到和操作他们被授权的功能。 “页面链接”则是指后台管理系统中的导航...

    json比对js插件

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。它基于JavaScript的一个子集,格式简洁且易于读写,同时也易于机器解析和生成。在进行开发时,我们常常需要对...

    Android React Native原生模块与JS模块通信的方法总结

    在做React Native开发的时候避免不了的需要原生模块和JS之间进行数据传递,这篇文章将向大家分享原生模块向JS传递数据的几种方式。 方式一:通过Callbacks的方式 说起Callbacks大家都不陌生,它是最常用的设计模式之...

    用于创建矩阵图表的Chart.js模块_JavaScript_TypeScript_.zip

    3. 创建一个canvas元素,并在JavaScript中实例化矩阵图表,传递必要的数据和配置选项。 需要注意的是,由于没有具体的标签信息,我们无法进一步了解这个模块的特性和应用场景。通常,矩阵图表在数据科学、统计分析...

    Layui实现父子页面之间值传递.zip

    这种传递方式适用于页面间不涉及服务器交互的情况,如果需要服务端参与,可以考虑使用路由参数或者存储在缓存中来传递数据。在实际项目中,需要注意安全性问题,确保数据在传递过程中的安全性。

    QT5.9 利用 QWebEngineView / QWebChannel 调用JS程序实现QT与HTML网页数据交互,加载百度地图并与地图交互数据

    1.QT通过QWebEngineView模块加载百度地图,通过QWebChannel 调用JS函数实现与地图数据交互。 2.点击pushButton按钮QT会调用JS函数在地图页做标注,通过上面两个输入框输入经纬度(c++调用JS)。 3.鼠标点击地图页后...

    js excel 批量复制数据到 html

    2. **数据解析**:使用SheetJS的`XLSX`模块读取二进制数据,将其转换为工作簿对象。这个对象包含了Excel文件的所有工作表。我们可以根据需求选择需要的工作表进行操作。 ```javascript var workbook = XLSX.read...

    易语言教学 - json模块解析/获取文本 示例源码

    这些模块都是为了在易语言环境中处理JSON数据而设计的,它们提供了不同的API和功能,帮助开发者解析JSON字符串并提取所需信息。 1. zyJson模块: zyJson是其中一个JSON解析库,提供了将JSON字符串转换为易语言数据...

    js拖拽模块

    【标题】"js拖拽模块"涉及的核心技术是JavaScript(简称JS)的事件处理和DOM操作,用于实现网页上的元素可拖动并调整布局。在类似igoogle的个性化首页中,用户可以根据自己的需求自由地组织和排列页面上的各种小工具...

    Adobe Flex Builder 3组件之间的传递参数

    8. **使用LocalObject进行本地通信**:在同一个应用程序内部,如果需要在不同模块或组件之间传递大量数据,可以利用LocalObject类进行本地通信,它类似于Java的RMI,但仅限于同一应用程序内。 9. **使用Shared...

    Node.js-一个用于自动获取支付宝账单信息的Node.js模块

    标题中的“Node.js-一个用于自动获取支付宝账单信息的Node.js模块”表明我们要讨论的是一个基于Node.js的模块,其主要功能是自动化获取支付宝用户的账单数据。这个模块利用了Node.js的非阻塞I/O和事件驱动特性,使得...

Global site tag (gtag.js) - Google Analytics