实现一个数组内所有元素的和。代码如下:function add(runningTotal, currentValue) {return runningTotal + currentValue; } var nums = [1,2,3,4,5,6,7,8,9,10]; var sum = nums.reduce(add); console.log(sum); // 显示55请写出reduce的实现功能。答案如下:Array.prototype.reduce=function(callback){ var total=0; this.forEach(function(e){ total=callback(total,parseInt(e));}); return total; };原文:http:/...
8. JavaScript - this对象this对象this总是指向函数的直接调用者(而非间接调用者)如果有new关键字,this指向new出来的那个对象在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window对于匿名函数或者直接调用的函数来说,this指向全局上下文(浏览器为window,NodeJS为global)当然还有es6的箭头函数,箭头函数的指向取决于该箭头函数声明的位置,在哪里声明,this就指向哪里this,...
JavaScript部分1.引起内存泄漏的操作有哪些1.全局变量引起2.闭包引起3.dom清空,事件未清除4.子元素存在引用5.被遗忘的计时器 2.如何实现ajax请求通过实例化一个XMLHttpRequest对象得到一个实例,调用实例的open方法为这次 ajax请求设定相应的http方法、相应的地址和以及是否异步,当然大多数情况下我们都是选异步,以异步为例,之后调用send方法ajax请求,这个方法可以设定需要发送的报文主体,然后通过 监听readystatechange事件...
11. js的new操作符做了哪些事情new 操作符新建了一个空对象,这个对象原型指向构造函数的prototype,执行构造函数后返回这个对象。 12.改变函数内部this指针的指向函数(bind,apply,call的区别)通过apply和call改变函数的this指向,他们两个函数的第一个参数都是一样的表示要改变指向的那个对象,第二个参数,apply是数组,而call则是arg1,arg2...这种形式。通过bind改变this作用域会返回一个新的函数,这个函数不会马上执行。 ...
如何用脚本判断用户输入的的字符串是下面的时间格式2004-11-21 必须要保证用户的输入是此格式,并且是时间,比如说月份不大于12等等,另外我需要用户输入两个,并且后一个要比前一个晚,只允许用JAVASCRIPT,请详细帮助作答,提示:可用正则表达式提前判断一下格式,然后提取各时间字段内容写出js及html代码 原文:https://www.cnblogs.com/qingyundian/p/8379630.html
1.alert(1&&2),alert(1||0) alert(1&&2)的结果是2 只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值; 只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值; 这个就是只有前面的为对,才能进行下去,而且必须有个返回值。这里主要是因为只有前面的为true,才会进行后面的运算,返回的就是后面的值。如果前面的是false,后面的也就没有意义,直接返回前面的结果...
1、将一段字符串转成驼峰命名法。var str = "web-kit-index"; function to(str){var j = str.split("-");for(var i=1,len=j.length;i<len;i++){j[i] = j[i].charAt(0).toUpperCase()+j[i].substring(1);}return j.join(""); } console.log(to(str));或function to(str){var reg = /-(\w)/g;return str.replace(reg,function(a,b){return b.toUpperCase();})} console.log(to(str)); 2、判断一段字符串中出现最多的是哪个字符并且出...
经过多方面的参考,结合自己掌握的知识,总结了一下java和javascript的区别。欢迎大家评论! 一、关系 虽然java和javascript在名字和语法上有一点相似,并且有一些联系,javascript语法源自java。但其实他们是两个公司开发的不同的产品,两种完全不同的编程语言。Java是SUN公司推出的新一代面向对象的程序设计语言,特别适合于Internet应用程序开发,前身是Oak语言;而JavaScript是Netscape公司的产品,其目的是为了扩展...
1.var let const区别var是ES5语法,let const是ES6语法; var有变量提升(不会报错,只会打印出undefined)var和let是变量可以修改,count是常量不可以修改let和count是块级作用域,var没有2.typeof能判断哪些类型undefined、string、number、boolean、symbol [值类型] object(注意 typeof null === ‘object’) [引用类型instanceof] function3.列举强制类型转换和隐式类型转换强制 parseInt parseFloat Number string toS...
题目:for (var i = 0; i < 5; i++) {setTimeout(function() {console.log(new Date, i);}, 1000); } console.log(new Date, i); 1、面对这段代码时给出的结果也不尽相同,以下是典型的答案: A. 20% 的人会快速扫描代码,然后给出结果:0,1,2,3,4,5; B. 30% 的人会拿着代码逐行看,然后给出结果:5,0,1,2,3,4; C. 50% 的人会拿着代码仔细琢磨,然后给出结果:5,5,5,5,5,5; 只要你对 JS 中同步和异步代码的区别、...
前端小菜又来了,这些天每天工作,晚上学习太累了。趁星期天给自己放个假。写完这个博客就要出去high了。鸡冻。接下来进入正题啦,你可能要问,我们学习这个有什么用啊?这样我先给大家来个小小的面试题。 alert(a);C1: var a = 1;F2: function a() { alert(2); } alert(a);c2: var a = 3; alert(a);F2: function a() { alert(3) } alert(a);如果你知道答案,那么恭喜你,接下来别听我bb了。如果你会...
1、线程与进程的区别一个程序至少有一个进程,一个进程至少有一个线程。线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。从逻辑角度来看...
hey,guys!我们一起总结一下JS预解析吧!首先,我们得搞清楚JS预解析和JS逐行执行的关系。其实它们两并不冲突,一个例子轻松理解它们的关系: 你去酒店吃饭,吃饭前你得看下菜谱,点下菜(JS预解析),但吃的时候还是一口一口的吃(JS逐行执行)! OK,解决下面五个问题,JS预解析就算过了~~(前提:对JS变量作用域有清晰理解)一、JS预解析是什么?其实就是对程序要用到的材料(变量,函数)给一个初始值,并存到一个表中(我自己...
前言一、面试题、答案以及总结js中截取字符串的方法 原文:http://www.cnblogs.com/YanYongSong/p/5291110.html
前言关于JavaScript的this指向问题,建议手动操作打印下内容题目var name = ‘222‘ var a = {name: ‘111‘,say: function() {console.log(this.name)} }var b = {name: ‘333‘,say: function(fn) {fn()} }a.say() b.say(a.say) 答案a.say() //111 b.say(a.say) //222 解析a.say()//this指向a,所以console.log(this.name)打印的值为111 b.say(a.say) //将a.say函数作为参数传给b.say(),而b.say中调用fn(),fn()并没有绑定在某一对象...