在 JavaScript 中,代码块、函数或模块为变量创建作用域。例如 if 代码块为变量 message 创建作用域:`if (true) {
const message = ‘Hello‘;
console.log(message); // ‘Hello‘
}
console.log(message); // throws ReferenceError
`
在 if 代码块作用域内可以访问 message。但是在作用域之外,该变量不可访问。以下是 5 种有趣的情况,其中 JavaScript 作用域的行为与你预期的不同。你可能会研究这些案例以提高...
1、什么是JavaScript?(这是基本题,对很多程序员来说也是送分题!)JavaScript是客户端和服务器端脚本语言,可以插入到HTML页面中,并且是目前较热门的Web开发语言。同时,JavaScript也是面向对象编程语言。类似的基本题目还包括:JavaScript变量都有哪些类型? 5种原始类型(primitive type),即Undefined、Null、Boolean、Number和String2、列举Java和JavaScript之间的区别?Java是一门十分完整、成熟的编程语言。相比之下,Ja...
史上最全的Javascript面试题总结(内附答案) - CSDN博客http://blog.csdn.net/u011277123/article/details/702087686、什么是未声明和未定义的变量?--为什么不是为赋值?未声明的变量是程序中不存在且未声明的变量。如果程序尝试读取未声明变量的值,则会遇到运行时错误。未定义的变量是在程序中声明但尚未给出任何值的变量。如果程序尝试读取未定义变量的值,则返回未定义的值。12、说明如何使用JavaScript提交表单?--jQ中有类...
1、JS有哪些数据类型主要数据类型:Undefined、Null、Boolean、Number、String引用数据类型:object、array、function2、JS的组成ECMAScript(核心):JavaScript 语言基础DOM(文档对象模型):规定了访问HTML和XML的接口BOM(浏览器对象模型):提供了浏览器窗口之间进行交互的对象和方法3、介绍JS有哪些内置对象数据封装类对象:Object、Array、Boolean、Number、String其他对象:Function、Arguments、Math、Date、RegExp、Err...
在IT界中公司对JavaScript开发者的要求还是比较高的,但是如果JavaScript开发者的技能和经验都达到了一定的级别,那他们还是很容易跳到优秀的公司的,当然薪水就更不是问题了。但是在面试之前,面试准备也应该足够的充分,毕竟不是每个优秀的开发者都能在短时间内表现自己。在这篇文章中,我将会列出5个常见的前端开发面试题。看到这里你证明你一定是个程序员或是HR了,不防把文章看完,了解一下自己还有什么不足之处,有什么问题希...
实现一个数组内所有元素的和。代码如下: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 中同步和异步代码的区别、...