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 变量按照存储方式区分为那些类型, ...
随机推荐
- NodeJS中的http模块
利用http模块,nodejs可以开发服务器, 极大简化服务器的创建: var http = require("http"); //创建服务器 var server = http. ...
- 跳跳棋(9018_1563)(BZOJ_2144)
题目: Hzwer的跳跳棋是在一条数轴上进行的.棋子只能摆在整点上.每个点不能摆超过一个棋子. 某一天,黄金大神和cjy用跳跳棋来做一个简单的游戏:棋盘上有3颗棋子,分别在a,b,c这三个位置.他们要 ...
- js 设置下拉框的默认值
设置下拉框的默认值,直接在option中增加selected就可以了.但是现在要使用JS来设置它的默认值,代码如下: <select name="aaa" id=" ...
- Socket异步通信及心跳包同时响应逻辑分析。
有段时间没有更博了,刚好最近在做Socket通信的项目,原理大致内容:[二维码-(加logo)]-->提供主机地址和端口号信息(直接使用[ThoughtWorks.QRCode.dll]比较简单 ...
- Java缓存框架使用EhCache结合Spring AOP
一.Ehcache简介 EhCache是一个纯Java的进程内缓存框架,具有如下特点: 1. 快速简单,非常容易和应用集成. 2.支持多种缓存策略 . 3. 缓存数据有 ...
- sqlserver的触发器练习实例
触发器的概念:它是由事件驱动的,就像java中的监听,当某个事件发生了,就会做一些工作. 下面直接上干货,创建insert触发器.delete触发器.DDL触发器和如何查看触发器定义 1.创建三个表学 ...
- bash脚本基础
1.bash特性之命令补全与路径补全 命令补全:敲击Tab按键 shell程序在接收到用户执行命令的请求且分析完成后,最左侧字符串将被当作命令去分析$PATH标量所指定的各路径下去查找 查找机制: 1 ...
- 基于jenkins搭建一个持续集成服务器
1 引言 1.1 编写目的 指导质量管理部,业务测试组同事进行Jenkins环境部署,通过Jenkins解决测试环境不可控,开发测试环境不一致等问题. 1.2 使用对象 质量管理部.基础研发部,集成部 ...
- MS MDS系列之初始MS Master Data Service(微软主数据服务)
背景介绍: 主数据服务(Master Data Services)是微软平台支持的主数据管理(MDM)平台.类似MDS这样的系统,如果后续维护得当,会给企业提供一个强大的中心数据库系统,来防止企业数据 ...
- ETL作业调度软件TASKCTL4.1单机部署
单机部署,实际上就是将EM节点和一个Server节点安装到同一个地方.EM节点是TASKCTL服务端的最顶层,主要负责客户端与服务端之间的通信.Server节点是TASKCTL的调度服务控制层,也有A ...