首页 > 编程语言 > 详细

前端工程师面试题JavaScript部分(第四季)

时间:2016-03-17 21:25:29      阅读:247      评论:0      收藏:0      [点我收藏+]

1、关于获取一个url中的参数列表问题

方法有很多种,比如正则啊,split截取字符串等等

下面是字符串的方法

function(url){
  var resutl = {};
  url = url.split("?")[1];
  var map = url.split(‘&‘);
  for(var i=0;len = map.length, i<len;i++){
      result[map][i].split(‘=‘)[0]  = map[i].split(‘=‘)[1];
  }
  return result;
}

另外还有location.search方法可以获取url?及其以后的参数然后split

第二种是正则的方法

function getQueryString(url){
  //var reg = new RegExp("")
  var r =  window.location.serach.substr(1).match(reg);
  var context = ‘‘;
  if(r != null){
     context = r[2];
     reg = null;
     r = null;
     return context == null || context == ‘‘ || context == ‘undefined‘ ? "" : context;
  }
}

第三中也是正则

function getQueryString(name) {
    var reg = new RegExp(‘(^|&)‘ + name + ‘=([^&]*)(&|$)‘, ‘i‘);
    var r = window.location.search.substr(1).match(reg);
    if (r != null) {
        return unescape(r[2]);
    }
    return null;
}

 这里没有关注参数值为空的情况和解码的问题

var name = "The Window";
var object = {
   name : "My Object",
   getNameFunc : function(){
      return function(){
        return this.name;
     };
    }
};
alert(object.getNameFunc()()); //The Window。

题目解析,主要考察this的指向问题,匿名函数的执行具有全局性,

前端工程师面试题JavaScript部分(第四季)

原文:http://www.cnblogs.com/wgdong/p/5289177.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!