javascript中location对象的属性与方法

前言

本章介绍js中的location中的属性和方法。

文章目录

    • 前言
    • 什么是location
    • 为什么要用location
    • location对象属性
    • location对象方法
    • 总结

什么是location

在JavaScript中,location 是一个包含当前页面的URL信息的对象。它允许你获取和操作当前页面的URL,比如获取当前页面的URL,获取URL中的特定部分(比如主机名、路径、查询参数等),以及在不刷新页面的情况下改变页面的URL。location 对象提供了各种方法和属性来帮助你操作URL。以下是一些location 对象的常用属性和方法:

  • location.href:获取或设置完整的URL。
  • location.host:获取或设置主机名和端口号。
  • location.hostname:获取或设置主机名。
  • location.protocol:获取或设置协议部分(如http://或https://)。
  • location.pathname:获取或设置路径部分。
  • location.search:获取或设置查询参数部分。
  • location.hash:获取或设置URL中的哈希部分。
  • location.reload():重新加载当前页面。
  • location.replace(url):加载一个新的URL并替换当前的URL。

通过使用location 对象,你可以方便地获取和操作当前页面的URL信息,从而实现页面导航、URL参数传递、页面刷新等功能。

为什么要用location

在JavaScript中,location 对象是一个非常常用的对象,因为它提供了许多有用的功能来处理当前页面的URL。以下是一些使用location 的常见用途:

  1. 获取当前页面的URL:通过location.href 属性可以获取当前页面的完整URL,包括协议、主机、路径、查询参数和哈希部分。

  2. 解析URL的各个部分:通过location.protocollocation.hostlocation.pathnamelocation.searchlocation.hash 等属性,可以分别获取URL的协议、主机名、路径、查询参数和哈希部分。

  3. 导航到新页面:通过location.hreflocation.assign() 方法,可以将浏览器导航到一个新的URL。这可以用于跳转到其他页面或刷新当前页面。

  4. 修改当前页面的URL:通过location.replace()location.href 属性,可以修改当前页面的URL。这可以用于在不刷新页面的情况下改变URL,例如在单页应用中实现页面切换效果。

  5. 获取和设置URL的查询参数:通过location.search 属性可以获取URL中的查询参数部分,也可以通过修改location.search 的值来修改URL的查询参数。

总而言之,location 对象提供了许多有用的功能,可以方便地处理当前页面的URL。无论是获取URL信息、导航到新页面还是修改URL,location 都是一个非常有用的工具。

location对象属性

属性描述
hash设置或返回从井号 (#) 开始的 URL(锚)。
host设置或返回主机名和当前 URL 的端口号。
hostname设置或返回当前 URL 的主机名。
href设置或返回完整的 URL。
pathname设置或返回当前 URL 的路径部分。
port设置或返回当前 URL 的端口号。
protocol设置或返回当前 URL 的协议。
search设置或返回从问号 (?) 开始的 URL(查询部分)。

location对象方法

  • location.assign()
    跟href一样,可以跳转页面,记录历史,可以后退。

    代码示例

    <body>
    <input type="button" value="跳转百度" onclick="f1()">
    <script>
        function f1() {
            location.assign('https://www.baidu.com');
        }
    </script>
    </body>
    

    结果:
    点击前
    在这里插入图片描述
    点击后
    在这里插入图片描述
    可以看到网址为百度,我就不截太大的图了。

  • location.replace()
    替换当前页面,因为不记录历时,所以不能后退页面。

    代码演示:

    <body>
    <input type="button" value="跳转百度" onclick="f1()">
    <script>
       function f1() {
           location.replace('https://www.baidu.com');
       }
    </script>
    </body>
    

    结果:
    点击前
    在这里插入图片描述
    点击后
    在这里插入图片描述
    可以看到不能回到上一个页面。

  • location.reload()
    强制刷新页面,从服务器重新请求! (如果有数据提交的话,会提示是否提交的),迫使浏览器重新下载当前的页面。

    代码演示:

    <body>
    <input type="button" value="刷新页面" onclick="f1()">
    <script>
        function f1() {
            location.reload();
        }
    </script>
    </body>
    

    结果:
    在这里插入图片描述
    点击后会刷新页面。

总结

属性/方法描述
location.href获取/设置当前页面的完整URL。
location.protocol获取当前页面的协议(例如,"http:"或"https:")。
location.host获取当前页面的主机名和端口号。
location.hostname获取当前页面的主机名。
location.port获取当前页面的端口号。
location.pathname获取当前页面的路径部分。
location.search获取当前页面的查询参数部分(以问号开头)。
location.hash获取当前页面的锚点部分(以井号开头)。
location.assign(url)导航到指定的URL。
location.replace(url)使用指定的URL替换当前页面,不会生成新的历史记录。
location.reload()重新加载当前页面。
location.search = queryString将查询参数部分设置为指定的查询字符串。
location.hash = hashValue将锚点部分设置为指定的值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/288623.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数字IC设计——数字电路基本元器件

现代数字集成电路基本由CMOS晶体管构成&#xff0c;而CMOS门电路由PMOS场效应管和NMOS场效应管以对称互补的形式组成&#xff0c;所谓“互补”&#xff0c;即利用互补型MOSFET&#xff0c;即pMOS和nMOS&#xff0c;二者成对出现构成互补电路。 这种电路具有高的电路可靠性和抗干…

向日葵远程控制软件MySQL5.7的安装与配置

目录 一. 向日葵远程控制软件 1.1 简介 1.2 选择原因 1.3 安装及使用 1.4 使用场景 二. MySQL5.7 安装与配置 2.1 什么是MySQL 2.2 安装 MySQL5.7 2.2.1 安装步骤 2.2.2 内部连接 2.2.3 外部连接 三. 思维导图 一. 向日葵远程控制软件 1.1 简介 向日葵电脑版是一款拥有多年…

Mybatis获取参数值得两种方式:${}和#{},${}和#{}区别是什么?

${}的本质是字符串拼接&#xff0c;#{}的本质是占位符赋值 ${} 使用字符串拼接的方式拼接sql&#xff0c;若为字符串类型或日期类型的字段进行赋值时&#xff0c;需要手动加单引号&#xff1b; #{} 使用占位符赋值的方式拼接sql&#xff0c;此时为字符串类型或日期类型的字段…

Halcon顶帽运算与底帽运算的应用

Halcon顶帽运算与底帽运算的应用 文章目录 Halcon顶帽运算与底帽运算的应用1. 提取小的物件2. 校正非均匀光照 正如上文所说的&#xff0c;顶帽运算返回的像素部分是尺寸比结构元素小的&#xff0c;并且比较亮的局部小区域&#xff1b;底帽运算返回的像素部分是尺寸比结构元素小…

陆面过程模式CLM、地球系统模式CESM安装及快速运行

目录 专题一 CESM、CLM运行条件及Linux编译基础 专题二 CESM、CLM基础 专题三 CLM程序获取、结构及其功能 专题四 CLM移植、安装及快速运行 专题五 CLM配置选项及数据文件制备 专题六 CLM单点或区域运行 专题七 CLM结果处理、分析及可视化 专题八 CLM代码修改、发展及改…

旧电脑搭建NAS

旧电脑可以搭建NAS吗&#xff1f; 可以&#xff01; 性能好吗&#xff1f; 完全没问题&#xff01; 简单吗&#xff1f; 轻松上手&#xff01; 怎吗搭建&#xff1f; 这里&#xff1a;用旧电脑搭建NAS在您的家庭中&#xff0c;通过将旧 PC 转变为NAS服务器&#xff0c;您…

纯css实现三等分饼图

实现原理&#xff0c;先绘制一个圆&#xff0c;然后把圆分成两份&#xff0c;在绘制一个菱形&#xff0c;最下面的角是120&#xff0c;这样就可以实现三等分啦 关键代码是一个css很少见的属性clip-path clip-path: polygon(24rem 36rem, 48rem 18rem, 24rem 0, 0 18rem); &…

【一文入门】Git常用命令集锦--分支操作和版本管理篇

前言 Git 是一种分布式版本控制系统&#xff0c;可以帮助团队协作开发、管理和维护代码&#xff0c;提高代码质量和效率&#xff0c;掌握常用版本管理命令可以帮助我们更好地管理代码变更和历史记录。下面我将介绍开发中常用的一些Git分支操作和版本管理命令 1 分支操作 1.1 …

MySQL——事物

目录 一.发现问题 二.什么时事物 三.事务提交方式 四.事物的常规操作方式 五. 事务隔离级别 1.如何理解隔离性 2.隔离级别 3.查看与设置隔离性 4.读未提交【Read Uncommitted】 5.读提交【Read Committed】 6.可重复读【Repeatable Read】 7.串行化【serializabl…

什么是 NAS?

一、什么是 NAS&#xff1f; 在数字化时代&#xff0c;小型企业面临着日益增长的数据存储需求。为了应对这一挑战&#xff0c;网络附加存储&#xff08;NAS&#xff09;系统成为了许多企业的首选解决方案。NAS系统是一种连接到网络的存储设备&#xff0c;允许授权网络用户和异…

声明式的管理方法文件

1.声明式管理方法&#xff08;yaml&#xff09;文件 1.适合对资源的修改操作 2.声明式管理依赖于已有yaml文件&#xff0c;所有的内容都在yaml文件中声明 3.编辑好的yaml文件还是要依靠陈述式的命令发布到k8s集群当中 2.声明式的三种格式 1.deployment的yaml文件 demonset…

在pbootcms中制作静态化的TAG标签列表

如果你使用pbootcms来管理你的网站&#xff0c;你可能会遇到这样的需求&#xff1a;将TAG标签列表改成静态化的类似于栏目结构的需求。下面是实现这个需求的步骤。 步骤1 修改PHP文件 打开 apps/home/controller/ParserController.php 并找到大约在1852行左右的代码段&#x…

cesium冷知识——矩阵使用的小技巧

1、查看矩阵的最好方式是&#xff1a; 在js代码中输出tileset.modelMatrix.toString()的值 或者 在devTools的console中输入 console.log(tileset.modelMatrix.toString()) &#xff08;一定要带着console.log&#xff09; 得到的结果如下&#xff1a; 上述形式更方便查看…

AI的明天从这里开始:OJAC近屿智能带您探索AIGC星辰大海的无限可能!

你是对人工智能充满好奇的编程小白&#xff0c;还是渴望工作赋能的白领&#xff1f;或者是想投身AIGC浪潮的创业者&#xff1f;无论你的背景如何&#xff0c;只要你对AI世界充满热情&#xff0c;我们OJAC近屿智能AIGC星辰大海大模型工程师和产品经理启航班以及系列课程都欢迎您…

Think-on-Graph—基于知识图谱的LLM推理

文章目录 背景动机LLM模型存在的问题LLM ⊕ \oplus ⊕KG范式的局限性 LLM ⊗ \otimes ⊗KG范式&#xff08;Think on Graph&#xff0c;ToG&#xff09;LLM ⊗ \otimes ⊗KG范式的过程ToG的三个阶段初始化实体提取关系及实体探索推理 例子及效果相关结论搜索深度和波束宽度对To…

深圳找工作一般去哪里找

深圳找工作一般在 吉鹿力招聘网上找 吉鹿力招聘网是一个权威的招聘平台&#xff0c;基本可以信任。公司通常先通过吉鹿力招聘网发布招聘信息。而求职者也可以先在吉鹿力招聘网网上了解招聘信息&#xff0c;然后投递简历。因为吉鹿力招聘网是一个综合性、专业性较强的地方&…

下载的 MongoDB bin目录下没有mongo.exe文件问题解决

MongoDB 4.4版本之前&#xff0c;我们可以在MongoDB的安装目录的bin文件夹中找到mongo.exe这个命令行工具。但是从MongoDB 4.4版本开始&#xff0c;MongoDB官方已经不再提供独立的mongo.exe可执行文件&#xff0c;而是将其整合到了mongosh这个新的交互式Shell中。 我们可以访问…

语音AI小夜灯项目

一、项目简介 使用ESP32-S3N8R8模块作为主控芯片&#xff0c;S3内核增加了用于加速神经网络计算和信号处理等的指令&#xff0c;这使得我们可以使用它来快速解析训练好的语音模型进行语音识别的功能。 二、原理解析 本项目由四个部分组成&#xff0c;电源部分、LED照明部分、…

MySQL常见面试题总结

1.MySQL基础 1.1什么是关系型数据库&#xff1f; 顾名思义&#xff0c;关系型数据库&#xff08;RDB&#xff0c;Relational Database&#xff09;就是一种建立在关系模型的基础上的数据库。关系模型表明了数据库中所存储的数据之间的联系&#xff08;一对一、一对多、多对多…

大连理工大学软件学院2022年秋季学期《矩阵与数值分析》上机作业

文章目录 《计算机科学计算》第二版162页第12题&#xff08;1&#xff09;162页第16题216页第12题 《数值分析方法与应用》一、基础知识部分1、5、 二、线性方程组求解2、6、 三、非线性方程组求解1、4、 四、插值与逼近1、5、7、 五、数值积分2、 六、微分方程数值解法1、 《计…