js面试题知识点全解(一变量类型和计算)
1.js中使用typeof能得到哪些类型
2.何时使用===和==
3.js中的内置函数
4.js变量按存储方式区分为哪些类型,并描述其特点
5.如何理解json
以下对这些问题的知识点做一些总结:
1.考点:js变量类型
typeof undefined //undefined
typeof 'killua' //string
typeof 215 //number
typeof true //boolean
typeof {} //object
typeof [] //object
typeof null //object
typeof console.log //function // typeof运算符6种类型:
// undefined,string,number,boolean,object,function
// 前4个是值类型,后4个是引用类型,typeof只能区分值类型的详细类型,对引用类型无法区分,只能区分function类型
2.值类型:每个变量可以存储自己的值,不会相互影响
var a=100;
var b=a;
a=200;
console.log(b);//
引用类型(对象,数组,函数):可以无限扩张属性,内存公用空间
var c={age:10};
var d=c; //age是一份,只是d和c同时都指向它
d.age=20;
console.log(c.age);//
3.变量计算-强制类型转换
// 1.字符串拼接
var a=100+10//
var b=100+'10'//10010,number转换为string
// 2.运算符
100=='100'//true
0==''//true,都可以转换为false
null==undefined //true,都可以转换为false //if语句
var a=true;
if(a){ }
var b=100;
if(b){
//把b强制转换为布尔类型
}
var c='';
if(c){
//把c空字符串转换为false
}
//逻辑运算符-与、或、非
console.log(10 && 0) //0, 10转换为true, true && 0返回0
console.log('' || 'abc') //'abc', ''转换为false
console.log(!window.abc) //true, window.abc返回为undefined,非false为true //判断一个变量会被当作true还是false
var cc=100;
console.log(!!cc);
4.变量计算-强制类型转换
// 1.字符串拼接
var a=100+10//
var b=100+'10'//10010,number转换为string
// 2.运算符
100=='100'//true
0==''//true,都可以转换为false
null==undefined //true,都可以转换为false //if语句
var a=true;
if(a){ }
var b=100;
if(b){
//把b强制转换为布尔类型
}
var c='';
if(c){
//把c空字符串转换为false
}
//逻辑运算符-与、或、非
console.log(10 && 0) //0, 10转换为true, true && 0返回0
console.log('' || 'abc') //'abc', ''转换为false
console.log(!window.abc) //true, window.abc返回为undefined,非false为true //判断一个变量会被当作true还是false
var cc=100;
console.log(!!cc);
问:何时使用===和==
if(obj.a==null){
//这里 相当于obj.a==null || obj.a==undefined,简写形式(jquery源码推荐的写法)
//除了这个,其他地方全用===
}
问:js中的内置函数 --数据封装对象
Object
Array
Boolean
Number
String
Function
Date
RegExp
Error
问:js变量按存储方式区分为哪些类型,并描述其特点
// 值类型,每个变量可以存储自己的值,不会相互影响
var a=100;
var b=a;
a=200;
console.log(b);//
//引用类型(对象,数组,函数),c和d同时指向age:10,
//可以无限扩张属性,内存公用空间(如果属性比较多,内存公用就会比较方便,所以要引用类型),互相会受干扰
var c={age:10};
var d=c;//age是一份,只是d和c同时都指向它
d.age=20;
console.log(c.age);//
问:如何理解json
//json 是内置在js语法里的对象,也是一种数据格式,json有两个API
JSON.stingify({a:10,b:20}) //把对象变换成字符串
JSON.parse('{"a":10,"b":20}') //把字符串变换成对象
js面试题知识点全解(一变量类型和计算)的更多相关文章
- js面试题知识点全解(一作用域和闭包)
问题: 1.说一下对变量提升的理解 2.说明this几种不同的使用场景 3.如何理解作用域 4.实际开发中闭包的应用 知识点: js没有块级作用域只有函数和全局作用域,如下代码: if(true){ ...
- js面试题知识点全解(一作用域)
问题: 1.说一下对变量提升的理解 2.说明this几种不同的使用场景 3.如何理解作用域 4.实际开发中闭包的应用 知识点: js没有块级作用域只有函数和全局作用域,如下代码: if(true){ ...
- js面试题知识点全解(一原型和原型链1)
1.如何准确判断一个变量是数组类型2.写一个原型链继承的例子3.描述new一个对象的过程4.zepto(或其他框架)源码中如何使用原型链知识点:1.构造函数2.构造函数-扩展3.原型规则和示例4.原型 ...
- js面试题知识点全解(一原型和原型链)
1.如何准确判断一个变量是数组类型2.写一个原型链继承的例子3.描述new一个对象的过程4.zepto(或其他框架)源码中如何使用原型链知识点:1.构造函数2.构造函数-扩展3.原型规则和示例4.原型 ...
- js面试题知识点全解(一闭包)
闭包使用场景:1.函数作为返回值,如下场景 function F1(){ var a = 100 //自由变量 //返回一个函数(函数作为返回值) return function(){ console ...
- [转载] Python数据类型知识点全解
[转载] Python数据类型知识点全解 1.字符串 字符串常用功能 name = 'derek' print(name.capitalize()) #首字母大写 Derek print(name.c ...
- JS基础知识——变量类型和计算(一)
JS中使用typeof能得到的哪些类型? 何时使用===何时使用==? JS中有哪些内置函数? JS变量按照存储方式区分为哪些类型,描述其特点? 如何理解JSON? 知识点梳理 一.变量类型: (1) ...
- js变量类型和计算
# js入门基础-变量类型和计算 ` --首先由于我使用了一个不太合格的markdown来编写来文章,所以在移动端阅读不要太方便,建议移动端使用横屏模式或pc端阅读,当然如果你有平板那是最好的. -- ...
- JS(面试中的变量类型和计算问题)
JS(变量类型和计算) 题目1.JS 中使用 typeof 能得到那些类型? 题目2.何时使用 === 何时使用==? 题目3.JS 中有哪些内置函数? 题目4.JS 变量按照存储方式区分为那些类型, ...
随机推荐
- 8位基本定时器(TIM4)
简介:该定时器由一个带可编程预分频器的8位自动重载的向上计数器所组成,它可以用来作为时基发生器,具有溢出中断功能. 主要功能: (1)8位向上计数的自动重载计数器: (2)3位可编程的预分配器(可在运 ...
- JavaScript用typeof判断变量是数组还是对象,都返回object
在JavaScript中所有数据类型严格意义上都是对象,但实际使用中我们还是有类型之分,如果要判断一个变量是数组还是对象使用typeof搞不定,因为它全都返回object. 使用typeof加leng ...
- 51nod_1417:天堂里的游戏
题目链接: https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1417 假设 ans=n/m,C=(A+B)/2 若出正面 ...
- web前端开发面试题(未完待续)
一.HTML与XHTML的不同:1)XHTML元素必须被正确地嵌套 2)元素必须被关闭 如:<h1>--</h1>关闭 3)标签名必须用小写字母 4)XHTML文档必须有根 ...
- ES6数组扩展
前面的话 数组是一种基础的JS对象,随着时间推进,JS中的其他部分一直在演进,而直到ES5标准才为数组对象引入一些新方法来简化使用.ES6标准继续改进数组,添加了很多新功能.本文将详细介绍ES6数组扩 ...
- ETL作业调度软件TASKCTL4.1单机部署
单机部署,实际上就是将EM节点和一个Server节点安装到同一个地方.EM节点是TASKCTL服务端的最顶层,主要负责客户端与服务端之间的通信.Server节点是TASKCTL的调度服务控制层,也有A ...
- 浅谈jQuery Pagination Ajax 分页插件的使用
插件介绍 此插件是jQuery的ajax分页插件.分页切换时无刷新也无延迟,因为是一次性加载的.如果你用到此插件作分页的时候,涉及到的数据量大,建议不要使用此插件,因为加载慢会导致用户体验不好! 插件 ...
- vue-cli的webpack模板项目配置文件分析
由于最近在vue-cli生成的webpack模板项目的基础上写一个小东西,开发过程中需要改动到build和config里面一些相关的配置,所以刚好趁此机会将所有配置文件看一遍,理一理思路,也便于以后修 ...
- S2-032代码执行
Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架.其全新的Struts 2的体系结构与Struts 1的体系结构差别 ...
- Vue学习-01
1.vue 学习 v-bind:title 数据绑定 v-if 判断显示或者隐藏 <div id="app-3"> <p v-if="seen" ...