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 变量按照存储方式区分为那些类型, ...
随机推荐
- Hadoop出现的错误及处理
1.local host is: (unknown); destination host is: "yun-ubuntu":8031; 原因:yun-ubuntu这个host 并不 ...
- JQuery中实现Ajax
简单小案例: $("input").click(function() { $.get("test.txt",function(data){ $("h1 ...
- js如何获取样式?
在某个项目中,我们经常会需要来获取某个元素的样式,比如说获取一个div的color:这样,新的问出现了, var style = box.style.width;console.log(style); ...
- 搭建SSM项目框架全过程及思考
1.前言 之前都是在现有框架下进行写代码或者总是看一些别人的架构,总会眼高手低.于是打算自己完整的走一遍流程,同时把所遇到的问题,思考的问题记下来,供大家参考.由于是工作年限不高,属于新手,不足之处还 ...
- Android hook神器frida(一)
运行环境 ● Python – latest 3.x is highly recommended ● Windows, macOS, or Linux安装方法使用命令 sudo pip install ...
- HDU 5616 Jam's balance(DP)
题目网址:http://acm.hdu.edu.cn/showproblem.php?pid=5616 题目: Jam's balance Time Limit: 2000/1000 MS (Java ...
- .net 类型转换
在.net 平台下类型有两种方式可以进行类型转换,强转或as转换.(有的说法是两种方式都进行强转,有两种强转方式). 如:typeA objA = (typeA)objB 或者使用另一种typeA ...
- Maven基础
Maven基础 maven核心内容:依赖管理. Maven是Apache组织的开源项目,是项目构建工具.用来管理jar包之间的相互依赖关系 Maven是一个项目构建和管理的工具,提供了帮助管理,构建, ...
- electron入门代码
Electron 提供了一个实时构建桌面应用的纯 JavaScript 环境.Electron 可以获取到你定义在 package.json 中 main 文件内容,然后执行它.通过这个文件(通常我们 ...
- Hibernate学习之一对多关联
注意事项: 1.单向一对多 只需在“一”放进行配置2.双向一对多 需要在关联双方都加以配置,而且需要在一的一方设置inverse=true 首先是实体类: TAddress.java(多的一方) ...