JS 的 Location 对象

简介: JS 的 Location 对象

location 是 window 对象下的一个属性,因为其返回结果为一个对象,所以我们也将 location 属性称为 location 对象,其作用是获取或设置窗口的 URL(URL 即统一资源定位符,互联网标准资源的地址)


URL 的标准语法格式:



protocol:通信协议(http,dtp 等等)

host:主机,域名(www.baidu.com)

port:端口号

path:路径(表示主机的目录或文件地址)

query:参数(以键值对的形式用&隔开)

fradment:片段(#后面接链接 或 锚点)

一:location 对象属性:

location 对象有以下几个常用属性 ,要重点把握住 href 和 search:window均可省略


window.location.href:获取或设置 整个 URL

window.location.host:返回主机名 / 域名

window.location.port:返回端口号

window.location.pathname:返回路径

window.location.search:返回参数

window.location.hash:返回片段

<小案例:在两个页面间传递数据 >

我们要达到以下效果:在第一个页面中输入数据登录跳转到第二个页面,在第二个页面显示出第一个页面输入的数据


第一个页面:




第二个页面:




我们将第一个页面输入的数据拿到了第二个页面中显示,这就利用了 location 对象的 search 属性,在第二个页面中得到了 URL 中 的参数,这样就可以在第二个页面中拿到第一个页面中的数据了,达到了页面域页面间的数据传输


第一个页面代码:

<body>

   <form action="./2.html">

       <input type="text" name="myname">

       <button>登录</button>

   </form>

</body>

第二个页面代码:

<body>

   <p></p>

   <script>

       var p=document.querySelector('p');

       var name=window.location.search;  //name的值为 '?myname=你输入的内容'

       name1=name.substr(1,name.length);  //name1 为 'myneme=你输入的内容' 去掉了?

       var arr=name1.split('=');  //将字符串转为了数组 ['myname', 'mike']

       p.innerHTML= arr[1] + ' 欢迎你登录';

   </script>

</body>

二:location 对象的方法:

location 对象也有几个常用的方法需要了解


window.location.assign():和href属性一样,用于跳转页面,也称为 页面重定向,可以后退

window.location.replace():替换当前页面,无法后退

window.location.reload():重新加载页面,与刷新效果相同,参数为 true 为强制刷新

window. location.assign():

和 href 属性的效果一样,用于跳转页面,也称为 页面重定向,可以后退


<button>按钮</button>

   <script>

       var btn=document.querySelector('button');

       btn.addEventListener('click',function(){

           window.location.assign('https://www.baidu.com/?tn=44004473_21_oem_dg')

       })

   </script>

window. location.replace():

替换当前页面,无法后退


<button>按钮</button>

   <script>

       var btn=document.querySelector('button');

       btn.addEventListener('click',function(){

           window.location.replace('https://www.baidu.com/?tn=44004473_21_oem_dg')

       })

   </script>

注意其跳转后无法回退到上一个页面




window. location.reload():

重新加载页面,和刷新页面效果相同,如果参数为 true 则为强制刷新


<button>按钮</button>

   <script>

       var btn=document.querySelector('button');

       btn.addEventListener('click',function(){

           window.location.reload();

       })


相关文章
|
1月前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
1月前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
1月前
|
JSON 前端开发 JavaScript
JavaScript中对象的数据拷贝
本文介绍了JavaScript中对象数据拷贝的问题及解决方案。作者首先解释了对象赋值时地址共享导致的值同步变化现象,随后提供了五种解决方法:手动复制、`Object.assign`、扩展运算符、`JSON.stringify`与`JSON.parse`组合以及自定义深拷贝函数。每种方法都有其适用场景和局限性,文章最后鼓励读者关注作者以获取更多前端知识分享。
20 1
JavaScript中对象的数据拷贝
|
1月前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
2月前
|
存储 JavaScript 前端开发
JavaScript 对象的概念
JavaScript 对象的概念
49 4
|
2月前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
52 1
|
2月前
|
存储 JavaScript 前端开发
js中函数、方法、对象的区别
js中函数、方法、对象的区别
23 2
|
2月前
|
JavaScript 前端开发 Unix
Node.js 全局对象
10月更文挑战第5天
39 2
|
2月前
|
JavaScript 前端开发 大数据
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
40 0
|
2月前
|
JavaScript 前端开发 索引
JavaScript中数组、对象等循环遍历的常用方法介绍(一)
JavaScript中数组、对象等循环遍历的常用方法介绍(一)
41 0