#Asc

html5的classList属性介绍和原生js实现jQuery的addClass,removeClass,hasClass方法

  其实html5已经扩展了class操作的相关API,其中classList属性就以及实现了class的增删和判断。  classList属性的方法有:add(value)添加类名,如果有则不添加contains(value)判断是否存在类名,返回Boolean值remove(value)从列表中删除类名toggle...

JS夯实基础:Javascript 变态题解析 (下)

functionsidEffecting(ary){ary[0]=ary[2];}functionbar(a,b,c){c=10sidEffecting(arguments);returna+b+c;}bar(1,1,1)16、这是一个大坑,尤其是涉及到ES6语法的时候。知识点:Functions/arguments ...

JS夯实基础:Javascript 变态题解析 (上)

["1","2","3"].map(parseInt)1、知识点:Array/mapNumber/parseIntGlobal_Objects/parseIntJavaScriptparseInt  首先,map接受两个参数,一个回调函数callback,一个回调函数的this值。其中,回调函数接受三个参数curren...

JavaScript中的bind方法及其常见应用

一、bind()方法的实现  在JavaScript中,方法往往涉及到上下文,也就是this,因此往往不能直接引用。就拿最常见的console.log("info…")来说,避免书写冗长的console,直接用log("info…")代替,不假思索的会想到如下语法:varlog=consol...

JavaScript高阶函数的应用

  高阶函数是指至少满足下列条件之一的函数:函数可以作为参数被传递;函数可以作为返回值输出。  JavaScript语言中的函数显然满足高阶函数的条件,在实际开发中,无论是将函数当作参数传递,还是让函数的执行结果返回另外一个函数,这两种情形都有很多应用场景,以下就是一些高阶函数的应用。ajax异步请求//callbac...

Javascript中的高阶函数介绍

  高阶函数:高阶看上去就像是一种先进的编程技术的一个深奥术语,一开始我看到的时候我也这样认为的。Javascript的高阶函数  然而,高阶函数只是将函数作为参数或返回值的函数。以下面的Hello,World作为一个简单的例子。varMoqi=function(p1){this.add=function(p2){re...

详细理解javascript中的强制类型转换

  将值从一种类型转换为另一种类型通常称为类型转换,这是显式的情况;隐式的情况称为强制类型转换,JavaScript中的强制类型转换总是返回标量基本类型值,如字符串、数字和布尔值。  如何理解:类型转换发生在静态类型语言的编译阶段,而强制类型转换则发生在动态类型语言的运行时?  1、如果是静态语言,比如c等,所有的类型...

JavaScript里面向对象的继承:不使用构造函数实现"继承"

一、什么是"非构造函数"的继承?//比如,现在有一个对象,叫做"中国人"。varChinese={nation:'中国'};//还有一个对象,叫做"医生"。varDoctor={career:'医生'}  请问怎样才能让"医生"去继承"中国人",也就是说,我怎样才能生成一个"中国医生"的对象?  这里要注意,这两个对象...

JavaScript里面向对象的继承:构造函数"继承"的六种方法

//现在有一个"动物"对象的构造函数。functionAnimal(){this.species="动物";}//还有一个"猫"对象的构造函数。functionCat(name,color){this.name=name;this.color=color;}  怎样才能使"猫"继承"动物"呢?一、构造函数绑定(通过ca...

JavaScript面向对象总结

  对象(Object)应该算是js中最为重要的部分,也是js中非常难懂晦涩的一部分。更是面试以及框架设计中各出没。本文章,主要参考JavaScript红宝书(JavaScript高级程序设计第六章)以及各大博主博客  毕竟是面向对象编程,我们在讨论如何面向对象之前先讨论讨论对象具有哪些属性和特性。属性类型  简单的说...

深入理解JavaScript中的函数操作——《JavaScript忍者秘籍》总结

  对于什么是匿名函数,这里就不做过多介绍了。我们需要知道的是,对于JavaScript而言,匿名函数是一个很重要且具有逻辑性的特性。通常,匿名函数的使用情况是:创建一个供以后使用的函数。简单的举个例子如下:window.onload=function(){alert('hello');}vartemplateObj=...

JavaScript数字精度丢失问题总结

  本文分为三个部分:1、JS数字精度丢失的一些典型问题(前端遇小数计算概率大,要有这个精度丢失的意识)2、JS数字精度丢失的原因(计算机用二进制存储数据,由于存储位置的限制有时会存在“舍去”。当模仿十进制进行四舍五入时,0舍1入,造成误差)3、解决方案(一个对象+一个函数)(解决方案:把小数乘...

奇特的JavaScript连续赋值运算

一、引子:vara={n:1};a.x=a={n:2};alert(a.x);//-->undefined  以上第二句a.x=a={n:2}是一个连续赋值表达式。这个连续赋值表达式在引擎内部究竟发生了什么?是如何解释的?二、猜想  猜想1:从左到右赋值,a.x先赋值为{n:2},但随后a赋值为{n:2},即a被...

10道典型的JavaScript面试题

问题1:作用域(Scope)  考虑以下代码:(function(){vara=b=5;})();console.log(b);  上述代码会打印出5。这个问题的陷阱就是,在立即执行函数表达式(IIFE)中,有两个赋值,但是其中变量a使用关键词var来声明。这就意味着a是这个函数的局部变量。与此相反,b被分配给了全局作...
代码星球 代码星球·2020-06-27

用 JavaScript 检测浏览器在线/离线状态(JavaScript API — navigator.onLine)

  如今HTML5移动应用或Webapp中越来越普遍的使用了离线浏览技术,所以用JavaScript检测浏览器在线/离线状态非常常见。  无论浏览器是否在线,navigator.onLine属性都会提供一个布尔值。如果浏览器在线,则设置为true,否则设置为false。if(navigator.onLine){//tr...
首页上一页...6061626364...下一页尾页