腾讯2013笔试题—web前端笔试题 (老题练手)
2013-10-23 04:02
295 查看
问题描述(web前端开发附加题1):
编写一个javascript的函数把url解析为与页面的javascript.location对象相似的实体对象,如:url :'http://www.qq.com/index.html?key1=1&key2=2',最后输出的对象是:
我的答案:
发现一个有趣的现象,这里提出与大家分享:
本来打算直接有正则分解字符串:
str.split(/(\/)|(\?)/g);
最后发现怎么搞都是:
["www.qq.com", "/", undefined, "index.html", undefined, "?", "key1=1&key2=2"]
最后查了资料才知道,split方法在用正则分解字符串的时候不会消除正则表达式,为此纠结好久。
作用:
split() 方法用于把一个字符串分割成字符串数组。
语法:
返回值:
一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括 separator 自身。
但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。
编写一个javascript的函数把url解析为与页面的javascript.location对象相似的实体对象,如:url :'http://www.qq.com/index.html?key1=1&key2=2',最后输出的对象是:
{ protocol: "http", hostname: "www.qq.com", pathname: "index.html", query: "key1=1&key2=2" }
我的答案:
var mylocation = { 'protocol':'http', 'hostname':'', 'pathname':'', 'query':'' } var url = 'http://www.qq.com/index.html?key1=1&key2=2'; var str=url.replace(/http\:\/\//,""); var a=str.split(/(\/)|(\?)/g); mylocation.hostname=a[0]; var arr=a[1].split("?"); mylocation.pathname=arr[0]; mylocation.query=arr[1]; console.log(mylocation);
发现一个有趣的现象,这里提出与大家分享:
本来打算直接有正则分解字符串:
str.split(/(\/)|(\?)/g);
最后发现怎么搞都是:
["www.qq.com", "/", undefined, "index.html", undefined, "?", "key1=1&key2=2"]
最后查了资料才知道,split方法在用正则分解字符串的时候不会消除正则表达式,为此纠结好久。
作用:
split() 方法用于把一个字符串分割成字符串数组。
语法:
stringObject.split(separator,howmany)
参数 | 描述 |
---|---|
separator | 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。 |
howmany | 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。 |
一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括 separator 自身。
但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。
相关文章推荐
- 腾讯2013校园招聘软件开发类笔试附加题分析(web前端方向)
- 2012 腾讯校招Web前端笔试的一道题,很值得怀念。。。
- 2011年腾讯实习生应聘(软件开发>Web前端>flash方向)笔试面试经历
- 腾讯web前端开发笔试题及答案
- 2017腾讯Web前端实习生招聘笔试题总结
- 腾讯Web前端(Js)笔试面试之谈
- 自己整理的部分腾讯web前端开发的笔试题目及答案
- 腾讯web前端笔试题及个人答案
- 2011年腾讯实习生应聘(软件开发>Web前端>flash方向)笔试面试经历
- 腾讯2018校招WEB前端开发笔试有感
- 2015腾讯web前端笔试题
- 腾讯web前端笔试题及个人答案
- 2013腾讯web前端实习生一面面试题
- 腾讯web前端开发工程师笔试题及答案
- Web前端开发笔试&面试_01(mi:)
- 找工作练手--一道腾讯的笔试题
- Web前端开发笔试面试题
- 腾讯的三轮面试(web前端)
- 笔试分析之腾讯2013暑期实习
- Web前端开发设计笔试题集锦