JS获取地址栏中的参数

hai.ye 2018-11-22 09:39:45

function UrlSearch()
{
var str=location.href; //取得整个地址栏
alert(str);
var num=str.indexOf("?")
str=str.substr(num+1); //取得所有参数 stringvar.substr(start [, length ]

var arr=str.split("&"); //各个参数放到数组里
for(var i=0;i < arr.length;i++){
num=arr[i].indexOf("=");
if(num>0){
name=arr[i].substring(0,num);
alert(name);
value=arr[i].substr(num+1);
alert(value);
this[name]=value;
}
}
}

上面代码中的 this[name]=value; 这句是什么意思,不明白这里。
...全文
509 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hai.ye 2018-11-22
  • 打赏
  • 举报
回复
引用 4 楼 qq_41114603 的回复:
UrlSearch这个函数如果只是像普通函数一样直接执行的话,函数里面的this指向window;那么意思就是把url后面的参数全部挂到window对象上面 比如 url后面的参数为 “?id=1&name=aaa” 那么执行结果就是 window.id="1";window.name="aaa"
这个函数是页面加载完成后自动执行的。
風灬雲 2018-11-22
  • 打赏
  • 举报
回复
UrlSearch这个函数如果只是像普通函数一样直接执行的话,函数里面的this指向window;那么意思就是把url后面的参数全部挂到window对象上面
比如 url后面的参数为 “?id=1&name=aaa”
那么执行结果就是 window.id="1";window.name="aaa"
winzond 2018-11-22
  • 打赏
  • 举报
回复
引用 2 楼 sinat_42478429 的回复:
[quote=引用 1 楼 winzond 的回复:]
http://www.runoob.com/js/js-function-invocation.html这里有关于this的详细介绍,变量name是地址栏“=”前的字段名(或许名称不正确,反正就是那个意思),value是“=”后的值,this是对象,[name]是属性,这条语句就是给Object添加一个name属性,并将value赋值给这个属性

这里面哪有Object?[/quote]阅读给你的链接,你必须搞懂this是谁才行,Object是“对象”的意思,就是this指向的对象
hai.ye 2018-11-22
  • 打赏
  • 举报
回复
引用 1 楼 winzond 的回复:
http://www.runoob.com/js/js-function-invocation.html这里有关于this的详细介绍,变量name是地址栏“=”前的字段名(或许名称不正确,反正就是那个意思),value是“=”后的值,this是对象,[name]是属性,这条语句就是给Object添加一个name属性,并将value赋值给这个属性
这里面哪有Object?
winzond 2018-11-22
  • 打赏
  • 举报
回复
http://www.runoob.com/js/js-function-invocation.html这里有关于this的详细介绍,变量name是地址栏“=”前的字段名(或许名称不正确,反正就是那个意思),value是“=”后的值,this是对象,[name]是属性,这条语句就是给Object添加一个name属性,并将value赋值给这个属性
hai.ye 2018-11-22
  • 打赏
  • 举报
回复
试了下确实是像4L说的那样。
風灬雲 2018-11-22
  • 打赏
  • 举报
回复
引用 5 楼 sinat_42478429 的回复:
[quote=引用 4 楼 qq_41114603 的回复:]
UrlSearch这个函数如果只是像普通函数一样直接执行的话,函数里面的this指向window;那么意思就是把url后面的参数全部挂到window对象上面
比如 url后面的参数为 “?id=1&name=aaa”
那么执行结果就是 window.id="1";window.name="aaa"

这个函数是页面加载完成后自动执行的。[/quote]
那函数里面的this就是window;你可以在函数里面打印this看下就知道了
内容概要:本文围绕“光伏-储能-数据心”系统的容量优化配置展开研究,旨在通过构建数学模型并结合Matlab编程实现,对园区内光伏发电、储能设备与数据心算力负荷之间的多能互补关系进行协同优化。研究综合考虑可再生能源出力的波动性、储能系统的充放电特性以及数据心的动态用电需求与算力调度特性,建立以最小化综合成本、降低碳排放强度、提升能源自给率等为目标的多目标优化模型,并采用先进的智能优化算法(如粒子群、灰狼、鲸鱼等)进行求解,从而确定光伏装机容量与储能系统配置的最优方案。文提供了完整的Matlab代码实现流程,涵盖数据预处理、模型构建、算法求解与结果可视化全过程,属于综合能源系统与信息基础设施深度融合的前沿交叉课题。; 适合人群:具备电力系统、能源工程、自动化或计算机等相关专业背景,熟悉Matlab编程与基本优化算法原理,从事新能源利用、绿色数据心、综合能源系统规划与低碳调度等方向的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握光伏-储能-数据心耦合系统的建模思路与多能流协同机制;② 学习基于Matlab的多目标容量优化配置方法与智能算法应用技巧;③ 为工业园区、数字经济园区及绿色数据心的能源系统规划、节能减排与可持续运行提供科学决策依据和技术解决方案。; 阅读建议:建议结合所提供的Matlab代码,深入理解目标函数设计、约束条件设定及算法实现细节,可通过调整负荷参数、改变气候数据、引入新的优化目标或约束条件等方式进行拓展性实验,以深化对系统特性的认知并提升实际科研与工程应用能力。

87,988

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧