嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

周梦康 发表于 2014-03-31 2977 次浏览 标签 : javascript

免费领取阿里云优惠券 我的直播 - 《PHP 进阶之路》

迅雷前端面试题:这三种写法基本是等价的,不过我最常用第三种方法,你能指出各自的优缺点不?

// 1.
(function (x, y, z) {
  console.log(x, y, z);
})('foo', 'bar', 'baz');

// 2.
(function (func) {
  return func('foo', 'bar', 'baz');
})(function (x, y, z) {
  console.log(x, y, z);
});

// 3.
var WebCommon = {};

WebCommon.do = function () {
  var args = [];
  args = args.concat.apply(args, args.slice.call(arguments));
  return args.pop().apply(null, args);
};

WebCommon.do('foo', 'bar', 'baz', function (x, y, z) {
  console.log(x, y, z);
});

首先,这三种方式目的都是在执行匿名函数时引入同步依赖。

第一种写法:当匿名函数里代码量过多时导致一屏显示不完整时,定位依赖关系不方便。

第二种写法:有点绕,不符合常规。

第三种写法:依赖关系最明显,也很通用。

嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

评论列表