JavaScript 获取地址栏参数
1.
function a() {
console.log(this);
}
a.call(null);
window
如果第一个参数传入的对象调用者是null或者undefined的话,call方法将把全局对象(也就是window)作为this的值。所以,不管你什么时候传入null,其this都是全局对象window,
所以该题目可以理解成如下代码:
function a() {
console.log(this);
}
a.call(window);
获取地址栏参数,并将其转换成一个对象
function getArgs() {
var args = new Object();
var query = location.search.substring();
query = query.replace(/\+/g, " ");
var pairs = query.split("&"); // Break at ampersand
for (var i = ; i < pairs.length; i++) {
var pos = pairs[i].indexOf('='); // Look for "name=value"
if (pos == -) continue; // If not found, skip
var argname = pairs[i].substring(, pos); // Extract the name
var value = pairs[i].substring(pos + ); // Extract the value
value = decodeURIComponent(value); // Decode it, if needed
args[argname] = value; // Store as a property
}
return args;
}
var data=getArgs();
一个地址获取域名数组
var getHost = function (url) {
var prev = "";
var result = [];
var index = url.indexOf('https');
if (index > -) { url = url.replace("https://", ""); prev = "https://"; }
var index2 = url.indexOf("http");
if (index2 > -) { url = url.replace("http://", ""); prev = "http://"; }
var index3 = url.indexOf('/');
var host = url.substring(, index3);
result.push(host);
result.push(prev + host);
return result;
}
var url="https://pgw.grapay.net/Test/index.htm";
var result=getHost(url);
result[0]:pgw.grapay.net
result[1]:https://pgw.grapay.net
3.方法的声明
console.log(add);
function add(x) { return x + ; }
console.log(add);
function add(x) { return x + ; }
console.log(add); console.log(fun);
var fun = function (x) { return x + ; }
console.log(fun);
var fun = function (x) { return x + ; }
console.log(fun);
function add(x) { return x + ; }
console.log(add());
function add(x) { return x + ; }
console.log(add()); var fun = function (x) { return x + ; }
console.log(fun());
var fun = function (x) { return x + ; }
console.log(fun());
可以看出这两种声明的不同
4.关于(,,,,,,)这样的返回结果
var f = (function f(){ return ""; }, function g(){ return ; })();
typeof f;
"number" 逗号操作符的使用可以很混淆,但这段说明它的行为:
var x = (, , );
x; x的值是3,这表明,当你有一系列的组合在一起,并由逗号分隔的表达式,它们从左到右进行计算,但只有最后一个表达式的结果保存。由于同样的原因,这个问题可以改写为减少混乱: var f = (function g(){ return ; })();
typeof f; 关于逗号表达式:
原文:
http://www.2ality.com/2012/09/expressions-vs-statements.html
译文:
http://www.cnblogs.com/ziyunfei/archive/2012/09/16/2687589.html
5.delete
http://www.cnblogs.com/aaronjs/p/3172112.html#2832944
JavaScript 获取地址栏参数的更多相关文章
- javascript获取地址栏参数的方法
javascript获取地址栏参数的方法<pre>function GetQueryString(name){ var reg = new RegExp("(^|&)&q ...
- 用JavaScript获取地址栏参数的方法
/** * 获取地址栏参数 * * @example GetUrlString('id') * * @desc 调用时加上判断,保证程序不会出错 * var myurl = GetUrlString( ...
- javascript获取地址栏参数
http://gzycm520.blog.51cto.com/175220/71030方法一: <script type="text/javascript"> < ...
- js,javascript,获取地址栏参数
function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*) ...
- javascript获取地址栏参数/值
//URL: http://www.example.com/?var1=val1&var2=val2=val3&test=3&test=43&aaa=#2 //wind ...
- JavaScript获取地址栏中的参数
JavaScript获取地址栏中的参数 1.获取地址栏中的参数 (1)若地址栏中的地址是: http://10.124.36.56:8080/CMOD/index.jsp?name=you&p ...
- JavaScript三种方法获取地址栏参数的方法
今天碰到要在一个页面获取另外一个页面url传过来的参数,一开始很本能的想到了用 split(“?”)这样一步步的分解出需要的参数. 后来想了一下,肯定会有更加简单的方法的!所以在网上找到了两个很又简单 ...
- 用JS获取地址栏参数的方法(超级简单)
方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) { var reg = new RegExp("( ...
- 【功能代码】---4用JS获取地址栏参数方法
用JS获取地址栏参数方法 // 方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) { var reg = new Reg ...
随机推荐
- Python开发【笔记】:python程序添加到systemctl系统服务
systemctl系统服务 环境:centos7 systemctl服务使用详解 实现 正常情况下我们在/usr/lib/systemd/system/目录下,创建一个以.service 后缀的文件, ...
- CF1044B Intersecting Subtrees 构造+树论
正解:构造 解题报告: 传送门 又是一道交互题!爱了爱了! 这题真的,极妙!非常神仙!就非常非常思维题! 直接说解法了吼 说起来实在是简单鸭 就是先问一个对方的联通块中的一个点在我这儿的编号,记为x ...
- mysql 数据操作 多表查询 多表连接查询 外链接之左连接 右连接
1.外链接之左连接:优先显示左表全部记录 left join 在内连接的基础上保留左表的记录 即便左表有一条记录和右表没有关系,也把他留下 mysql> select * from empl ...
- 【Cocos2dx 3.3 Lua】触屏事件
cocos2dx 3.x触屏时间分为单点触摸和多点触摸: 单点触摸:(即只有注册的Layer才能接收触摸事件) 多点触摸点单用法(多个Layer获取屏幕事件): ...
- [LeetCode] questions conclusion_ Dynamic Programming
Questions: [LeetCode] 198. House Robber _Easy tag: Dynamic Programming [LeetCode] 221. Maximal Squar ...
- 转载一篇debug文章
http://versprite.com/og/ios-reverse-engineering-part-two-debugging-and-tracing-with-lldb/ iOS Revers ...
- keras搭建密集连接网络/卷积网络/循环网络
输入模式与网络架构间的对应关系: 向量数据:密集连接网络(Dense层) 图像数据:二维卷积神经网络 声音数据(比如波形):一维卷积神经网络(首选)或循环神经网络 文本数据:一维卷积神经网络(首选)或 ...
- react native android 编译
修改 Maven 仓库地址 React Native 在初始化时会从 jcenter.binary.com 这个地方下载一些东西,网上搜索了一下,好像是在下载 Maven 相关的依赖. 针对全局进行修 ...
- svg绘图工具raphael.js的使用
1.raphael.js svg画图的开源库,支持IE8+ 官方api: http://dmitrybaranovskiy.github.io/raphael/reference.html Githu ...
- 把 ElasticSearch 当成是 NoSQL 数据库
Elasticsearch 可以被当成一个 “NoSQL”-数据库来使用么? NoSQL 意味着在不同的环境下存在不同的东西, 而erestingly 它并不是真的跟 SQL 有啥关系. 我们开始只会 ...