特殊类型:underfined 未定义、Null 空对象、Infinate 无穷、NAN 非数字 基本数据类型的值直接在栈内存中存储,值与值之间独立存在,修改一个变量不会影响到其他变量。...使用typeof检查一个布尔值时返回boolean Undefined未定义: js中输出未被赋值的被定义变量结果是Undefined;Undefined类型的值只有一个。...//”string” 方法二: -使用String()函数,将被转换的数据作为参数传递给函数; -对于Number和Boolean实际上就是调用toString()方法; -对于null和underfined...,就不会调用toString()方法,它会将null直接转换为“null”,将underfined直接转换为“underfined”。...console.log(a) //”true” var a =NaN; a =Boolean(a); console.log(a) //”false” 2、字符串–>布尔,除了空串,其余的都是true 3、null和underfined
function 构造器的方式来创建函数对象 for …in语句 这里我们可以用for in去遍历obj中的属性 switch语句 如下三种方法 循环语句 with语句 可以修改当前的作用域 如下,在js...去遍历所有的属性,但是也可会吧原型链上的属性也遍历出来,并且顺序是不确定的 当我们尝试去读写不存在的属性 比如我们创建一个对象obj,访问一个不存在的属性y,原型链查找,找到原型链的末端null还是找不到就会返回 underfined...如果写这个属性的话,如果有就修改对象的值,如果没有就创建并赋值 obj.y是undefined,再去访问obj.y.z就会报错不能获取underfined的属性z,返过来去赋值 巧用运算符实现链式读取...定义变量yz,想去对obj.y去操作的时候,obj不为空,但是想要检测y属性是否有的时候,有时会用if,把y.z取出来做一些处理 巧用运算符,&&,如果有的话就继续向右去找,如果有一个是underfined...=underfined 时,一个等于null和underfined是想等的,也就是不等于null在做以下处理 如果只不等于underfined,要用!
考核内容: js 数据类型 题发散度: ★★ 试题难度: ★★ 解题思路: 在ES5的时候,我们认知的数据类型确实是 6种: Number、String、Boolean、undefined、object...【underfined】:(1.变量声明未给值2.未声明变量); underfined+1=NaN; 5.【null】:(空值) ;null+1=1。...JS数据类型null 和 undefined 有什么区别? Null 只有一个值,是 null。不存在的对象。 Undefined 只有一个值,是undefined。没有初始化。
string、number、null、underfined、boolean object是所有对象的父对象。 2、浅谈javascript中变量和函数声明的提升?...9、JS数组和对象的遍历方式,以及几种方式的比较。...eval可以把字符串解析成JS代码并运行; 避免使用eval,不安全,非常消耗性能; 把JSON字符串传换成JSON对象时可以使用eval。 27、null和underfined的区别?...34、说说JS延迟加载的方式有哪些? defer和async,动态创建DOM(用得最多),异步加载JS。 35、说说attribute和property的区别?...第一个阶段是创建阶段,JS解释器会找出需要提升的变量和函数,并且会给他们提前在内存中开辟好空间,函数的话会将整个函数存入内存中,变量只声明并且赋值为underfined,所以在第二个阶段,也就是代码执行阶段
JS由此而生!...-- 外部引入也是采用script成对标签,但里面需要写src=“JS文件地址” --> <!.../3) 的运算结果为false 我们通常通过 Math.abs(1/3 - (1-2/3) < 0.000001)来判断浮点数是否相同 特殊类型 JavaScript存在两种特殊类型: null 空 underfined...定义格式: var arr = [...,...,...]; 定义例子: var arr = [1,2,3,"Hello",true]; 输出方法: arr[0] 注意:当打印越界时,不会报错,但打印结果为underfined...{ 属性名:属性值, 属性名:属性值, 属性名:属性值 } 对象的键是字符串,值是任意对象 对象赋值: 对象.属性 = 属性值 当使用一个不存在的属性时,不会报错,但会报出underfined
扩展到Class : 关于 null 和 underfined 一般 !...class 表示 class为null || class 为underfined null 表示 class 没有被实例化 , 没有被new underfined 在class中 和 null 相似 ,
虽然现在基本不怎么使用 jQuery了,但 jQuery流行 10多年的 JS库,还是有必要学习它的源码的。也可以学着打造属于自己的 js类库,求职面试时可以增色不少。...unpkg.com源码地址:https://unpkg.com/jquery@3.4.1/dist/jquery.js jQuery github仓库 自执行匿名函数 (function(global,...== "underfined" ?...if(i === length){ target = this; i--; } for(; i < length; i++){ // 不是underfined...if(i === length){ target = this; i--; } for(; i < length; i++){ // 不是underfined
在js中有几种实现模块的方法: 对象字面量表示法; Module模式 AMD模块 CommonJs模块 ES Harmony模块 本篇中我们主要介绍“对象字面量”表示法。...-- 注意 1.对象字面量不需要使用new实例化; 2.不能用在一个语句的开头,否则可能会被解释为一个块的开始; --> 2.2 Module(模块)模式 JS中,Module模式用于进一步模拟类的概念...);//2 console.log(basketModule.getTotal());//0.5+1.5 = 2 //注意 console.log(basketModule.basket);//underfined
考核内容: 基本数据类型 题发散度: ★ 试题难度: ★ 解题: JS中数据类型有: 基本数据类型(值类型):字符串(String)、数字(Number)、布尔(Boolean)、空(Null...长度) 字符结构(单个构成) charAt(下标) // 练习取字符 +字符串拼接. undefined 当我们声明一个变量但未给变量赋值时,这个变量的默认值就是 Undefined,类型也是 Underfined
前言 最近在写插件的过程中,需要使用 JS 判断是否有滚动条,搜了一下,大致方法都差不多,但都有些啰嗦,代码不够简洁。最终通过参考不同方法,写了一个比较简单的方法。...判断是否有滚动条的方法 其实只需要一行 JS 就可以,测试兼容 IE7 function hasScrollbar() { return document.body.scrollHeight >...但是在 IE7,IE8 中 window.innerHeight 为 underfined,所以为了兼容 IE7、IE8,需要使用 document.documentElement.clientHeight...scrollDiv.clientWidth; document.body.removeChild(scrollDiv); return scrollbarWidth; } 总结 使用 JS
预编译 1.JS代码的执行步骤 语法分析: 主要扫描代码有没有语法上的错误(比如少些括号,写了中文符号) 预编译: 进行变量的声明提升,函数整体提升,函数执行前一刻的准备工作。...解释执行: 对js代码进行执行,解释一行,执行一行。 2.预编译的前奏 暗示全局变量:任何变量未经声明就赋值,此变量归全局所有。...这里打印2和underfined,因为在foo函数中,a会被变量提升,但是赋值的时候指定了对象o的作用域,所以只改变了o.a的值。
js七大数据类型详解 6种原始类型 1.Number(包括整型和浮点型) 2.String 3.Underfined...DOCTYPE html> js类型返回字符串以及返回值 <script type
1.数据类型的种类 js一共有六种数据类型其中有五种简单数据类型 包括:String、Number、Boolean、undefined、Null 2.数据类型的检测 可以使用typeof来检测数据类型...string“ –>这个值是字符串 ”number“–>这个值是数字 ”object“–>这个值为null或者obejct ”function“–>这个值是函数 toString:注意,不可以转null和underfined
. += /= *= %= 任何其他数据类型除了和字符串做相加操作外,与数字类型做算数运算的时候,其他数据类型都会自动转换成数字 特殊数据类型中:NULL>0;underfined>NaN 数字0转成布尔值为...false,所有非0数字转成布尔值为true 空字符串转成布尔值为false,所有非空字符串转成布尔值为true null和underfined转成布尔值都为false Number() parseInt
js是单线程执行 同一时间只能做一件事(任务) 但是有子线程 任务分两种 一种是同步任务 一种是异步任务 同步任务在主线程中排队执行 异步任务进入一个任务队列 在同步任务形成的执行栈完成后 再执行异步任务的队列中的任务...f = func() for (let i = 1; i <= 4; i++) { console.log(f.next()) } 可以看到我们执行完毕 返回了ok 再次向下执行 value underfined
下面这些值会转换成false: underfined,null,0,-0,NaN,“”//空字符串 所有其他值,包括所有对象(数组)都会转换成true。
所有函数拥有 prototype 属性(显式原型)(仅限函数) 原型对象:拥有 prototype 属性的对象,在定义函数时就被创建 关于 prototype 与__proto__ js...中所有的函数都有一个 prototype 属性,该属性引用了一个对象,即原型对象,也简称原型 js对象有一个__proto__属性,指向它的构造函数的prototype属性 对象....当对象使用属性时,先在自身找,有就直接用,没有就沿着__proto__这条链往上找,直到 Object 原型的位置,有就返回相应的值,没有就返回 underfined。
,vue生命周期函数: vue的生命周期函数又叫钩子函数: 生命周期方法详解: beforeCreate //详情 //实例创建前,这个时候的 el,data,message 都是 underfined
JS加密、JS混淆,是一回事吗?是的!在国内,JS加密,其实就是指JS混淆。...1、当人们提起JS加密时,通常是指对JS代码进行混淆加密处理,而不是指JS加密算法(如xor加密算法、md5加密算法、base64加密算法,等等...)2、而“JS混淆”这个词,来源于国外的称呼,在国外称为...所以,有的人用国外的翻译名称,称为js混淆。3、无论是js加密,还是js混淆,他们的功能,都是对js代码进行保护,使可读的明文js代码变的不可读,防护自己写的js代码被他人随意阅读、分析、复制盗用。...,js是直接执行源码、对外发布也是源码),所以,为了提升js代码安全性,就有了js加密、js混淆操作。...加密后的js代码,不一定能保证100%安全了,但肯定比不加密强,很简单的道理。6、怎样进行js加密、js混淆?
导致老是提示undefined;经网上查询得知JS全局变量时:当全局变量跟局部变量重名时,局部变量的scope会覆盖掉全局变量的scope,当离开局部变量的scope后,又重回到全局变量的scope。...使用未声明的变量或函数全抛出致命错误而中断脚本执行) // 此时i的值是underfined
领取专属 10元无门槛券
手把手带您无忧上云