JavaScript学习-location对象

1,介绍

  • location是最有用的BOM对象之一,它提供了当前窗口中加载的文档有关的信息,还提供了一些导航功能。
  • 它既是window对象的属性,也是document对象的属性。
  • 它将URL解析为独立的片段,让开发人员可以通过不同的属性访问这些片段,下表列出了location对象的所有属性。
    这里写图片描述

2,查询字符串参数

  • 其中通过上表的属性访问URL包含的查询字符串的属性并不方便。可以像下面这样创建一个函数,用以解析查询字符串,然后返回包含所有参数的一个对象:

    function getQueryStringArgs(){
        // 取得查询字符串并去掉开头的问号
        var qs =(location.search.length > 0 ? location.search.substring(1):"")
        // 保存数据的对象
        args = {},
        items = qs.length?qs.split("&"):[],
        item=null,
        name=null,
        value=null,
        //在for循环中使用
        i=0,
        len= items.length;
    
        for(i0;i<len;i++){
            item = items[i].split("=");
            name = decodeURIComponent(item[0]);
            value = decodeURIComponent(item[1]);
    
            if(name.length){
                args[name]=value;
            }
        }
        return args;
    }

3,位置操作

  • 使用location对象可以通过很多方式来改变浏览器的位置

  • assign()

    location.assign("http://www.wrox.com");

  • 下面两行与现实调用assign()方法效果完全一样

    window.location = "http://www.wrox.com";
    location.href = "http://www.wrox.com";
  • 修改location的属性(hash除外),页面都会以新URL重新加载。
  • replace()
    调用replace()方法后,用户不能回到前一个页面,不会在历史记录中生成新纪录。
  • reload()

    • 使用示例
    location.reload() //重新加载(有可能从缓存中加载)
    location.reload(true); //重新加载(从服务器加载)
    • 位于reload()调用之后的代码可能会也可能不会执行,取决于网络延迟和系统资源等因素
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值