解题:在下面画线的地方填任何代码,使得最终输出 'hello world',至少写五个不同思路的方案
今天(已经好些天前了...),群里面(JS前端开发跳板6群【81501322】)有个群友问了这样一个问题。
如题:在下面画线的地方填任何代码,使得最终输出 'hello world',至少写五个不同思路的方案

看到这个题,我的内心是崩溃的,这什么鬼?
不一会就看到有大神给出了几个答案.


自己的思想也会被开窍的。
细心的童鞋有没有看到问题??console.log的结果并不是题目给出的 'hello world' ,而是 'hello' 'world'。(当然,以我当时懵逼人脸神是发现不了的)
随后,一位大神给出了大案。
1:) 
解析:通过自执行函数直接输出'hello world',然后抛出一个异常,程序报错,后面的代码不再解析执行,虽然报错了,但是很好的达到想要的结果
看到这里,我的思路就来了(群众的力量是伟大的,特别是一群有相同爱好的,热心帮助的群众【词穷了,该多读点书了】)
细心研究发现,这道题目可以从语句执行顺序、重写console.log的这个方法来下手(目前就这两种了)
2:) 
解析:通过重写console.log方法,来达到效果。可能有些童鞋有点懵逼了,这是啥东西,不要急,你要知道的是这个知识点《逗号运算符》
2.1:) 
解析:通过定义一个队列,重写 console.log 方法向队列中添加元素然后异步输出。这里需要注意的是 if 中是一个自执行表达式,如果不显式return一个值的话,它的值是 undefined
3:) 
解析:通过添加其他的 if 语句来改变输出结果
4:) 
解析:通过改写 console.log 函数来确保输出值永远是固定值
看了答案后再看题目,感觉也不太难,这些语法都能够写的出来,但是刚看到题目的瞬间还是无从下手,还是要多练多加深印象
解题:在下面画线的地方填任何代码,使得最终输出 'hello world',至少写五个不同思路的方案的更多相关文章
- CGContextRef 画线简单用法
CGContextRef CGContextMoveToPoint(context,150,50);//圆弧的起始点 CGContextAddArcToPoint(context,100,80,130 ...
- 画线函数Glib_Line算法的研究
在这里首先先简单把我对函数的功能的理解阐述一下,方便后面的分析:Glib_Line函数实现的功能是通过参数给定(x1,y1,x2,y2,color),来确定起点(x1,y1)和终点(x2,y2)两 ...
- android中实现在ImageView上随意画线涂鸦
我实现的思路: 1.继承ImageView类 2.重写onTouchEvent方法,在ACTION_MOVE(即移动时),记录下所经过的点坐标,在ACTION_UP时(即手指离开时,这时一条线已经画完 ...
- MFC画线功能总结
本文仅用于学习交流,商业用途请支持正版!转载请注明:http://www.cnblogs.com/mxbs/p/6216464.html MFC画线功能要点有二:其一,鼠标按下时记录初始位置为线的起始 ...
- MFC消息映射机制以及画线功能实现
---此仅供用于学习交流,切勿用于商业用途,转载请注明http://www.cnblogs.com/mxbs/p/6213404.html. 利用VS2010创建一个单文档标准MFC工程,工程名为Dr ...
- Android中Path类的lineTo方法和quadTo方法画线的区别
转载:http://blog.csdn.net/stevenhu_223/article/details/9229337 当我们需要在屏幕上形成画线时,Path类的应用是必不可少的,而Path类的li ...
- C#使用 DirectX SDK 9做视频播放器 并在视频画线添加文字 VMR9
视频图像处理系列 索引 VS2013下测试通过. 在百度中搜索关键字“DirectX SDk”,或者进入微软官网https://www.microsoft.com/en-us/download/det ...
- iOS小画板画线总结
一:基本画线: 使用贝赛尔曲线画: //创建路径 UIBezierPath* aPath = [UIBezierPath bezierPath]; //设置线宽 aPath.lineWidth = 5 ...
- [修复] Firemonkey 画线问题(Android & iOS 平台)
问题:官方 QC 的一个 Firemonkey 移动平台画线问题: RSP-14309: [iOS & Android] Delphi 10.1 Berlin - drawing proble ...
随机推荐
- SteamVR手柄震动控制实现
SteamVR手柄震动控制实现 public class handCtrl : MonoBehaviour { public SteamVR_TrackedObject _TrackedObject; ...
- [转]jQuery调用ASPX返回json
本文转自:http://www.cnblogs.com/fire-phoenix/archive/2009/11/13/1614146.html 本文介绍如何在ASP.NET(ASP.NET/AJAX ...
- (转)mkpasswd 的使用
原文:http://blog.csdn.net/u010339879/article/details/69788032 这个命令是随机生成 密码的一个工具, 如果没有这个命令,请安装相应的包. yum ...
- Windows 10家庭版升级到专业版,系统蓝屏
Log Name: SystemSource: Microsoft-Windows-DistributedCOMDate: 9/9/2018 7:56:57 PMEvent ID: 10016Task ...
- 【Ionic】---$ionicLoading ion-spinner SVG旋转加载的动画图标
ionic 加载动作 $ionicLoading $ionicLoading 是 ionic 默认的一个加载交互效果.里面的内容也是可以在模板里面修改. 用法 angular.module('Load ...
- Oracle同义词、索引、分区
同义词:是现有对象的一个别名 简化SQL语句 隐藏对象的名称和所有者 提供对对象的公共访问 同义词共有两种类型 私有同义词只能在其模式内访问,且不能与当前模式的对象同名 公有同义词可被所有的数据库用户 ...
- DNN学习笔记 最简单的皮肤制作
说明: 在学习DNN时,使用的版本为 DNN8.参考资料:http://www.dnnsoftware.com/docs/designers/creating-themes/index.html 制作 ...
- Intellij IDEA 配置jrebel热部署
Jrebel 先介绍一下jrebel,jrebel是可以热部署项目的一个工具,更改代码自动部署并不需要重启项目(在spring中的controller中,增加.修改方法都是可以进行热部署而不需要重启的 ...
- Net-SNMP(V3协议)安装配置笔记(CentOS 5.2)(转)
原出处:http://blog.ihipop.info/2010/03/722.html 为了这颗仙人掌(cacti),我必须先部署(Net-SNMP), 同时我为了安全因素,也为了简便考虑,决定采用 ...
- gulp 无损压缩图片
在做项目中,美工有时候会给一些比较大的图片,在做网站的时候,图片太大会影响加载速度.因此,我们需要无损压缩图片. 在尝试过几个压缩图片的方法,发现gulp中的gulp-tinypng-nokey插件是 ...