解题:在下面画线的地方填任何代码,使得最终输出 '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 ...
随机推荐
- Mac 系统变量
vim .bash_profile ========================= MAVEN_HOME = < ... > export MAVEN_HOME =========== ...
- matlab 图像和 opencv 图像的相互转换
matlab可以生成C++代码, 但是在涉及图像数据的时候,要注意数据格式的转换. 1. Matlab图像数据在内存中的存放顺序是R通道图,G通道图,B通道图.对于每个通道,数据存放是先列后行. 2. ...
- [转].Net Core上用于代替System.Drawing的类库
本文转自:http://www.tuicool.com/wx/iuaINjy 目前.Net Core上没有System.Drawing这个类库,想要在.Net Core上处理图片得另辟蹊径. 微软给出 ...
- Ubuntu15.10下安装Docker
1.首先查看linux系统版本 head -n 1 /etc/issue 2.升级包管理器 sudo apt-get update sudo apt-get install apt-transport ...
- asp.net用zip方法批量导出txt
首先: 引用 ICSharpCode.SharpZipLib.dll,百度下载 然后引用命名空间: using ICSharpCode.SharpZipLib.Zip;using ICSharpCod ...
- iOS开发之Objective-c的AES256加密和解密算法的实现
原文:http://www.lidaren.com/archives/1470 高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法. 以下实现 ...
- Elmah 数据库脚本
/* 错误管理工具 SQL代码 */ CREATE TABLE dbo.ELMAH_Error ( ErrorId UNIQUEIDENTIFIER NOT NULL, Application NVA ...
- 【Microsoft Azure学习之旅】测试消息队列(Service Bus Queue)是否会丢消息
组里最近遇到一个问题,微软的Azure Service Bus Queue是否可靠?是否会出现丢失消息的情况? 具体缘由如下, 由于开发的产品是SaaS产品,为防止消息丢失,跨Module消息传递使用 ...
- python异常处理、断言
异常处理基本语法 捕获异常 try: 语句1 语句2 ... except ERRNAME as e: print(e) #尝试执行语句,捕获到ERRNAME异常时打印异常信息e 捕获多个异常 try ...
- 【转】【MATLAB】模拟和数字低通滤波器的MATLAB实现
原文地址:http://blog.sina.com.cn/s/blog_79ecf6980100vcrf.html 低通滤波器参数:Fs=8000,fp=2500,fs=3500,Rp=1dB,As= ...