首页 > 试题广场 >

以下JavaScript 代码,返回 false 的是

[单选题]
以下JavaScript 代码,返回 false 的是
  • var test=1;typeof test=='number';
  • var test=1.2;typeof test=='float';
  • var test=undefined;typeof test=='undefined';
  • var test={};typeof test=='object';
  • var test='4399'-0;typeof test=='number';
  • var test=null;typeof test=='object';
typeof
undefined        值未定义
boolean           布尔值
string               字符串
number            数值(整形和浮点)
object                对象或null
function            函数
发表于 2018-03-15 09:49:32 回复(5)
b
答案是B typeof 只返回 string  number object 还有 undefined function ,number 就包含了float ,所以
选项b typeof test 应该返回的是 "number" ,所以 "number"=="float" ==>false
编辑于 2017-07-14 20:04:06 回复(1)
 


考察 运算符 typeof, typeof用来检查JS中基本数据类型

A 选项 变量test中存储的数字类型 1,  typeof tset 返回 'number', 'number' == 'number',返回 true 
题目中应该是"=="(相等运算符)
B 选项 变量test中存储的数字类型 1.2,  typeof tset 返回 'number', 'number' !== 'number',返回 false 
C选项 变量test中存储的 undefined,  typeof tset 返回 'undefined', 'undefined' == 'undefined',返回 true
D选项 变量test中存储的对象,  typeof tset 返回 'object', 'object' == 'object',返回 true
E选项 变量test中存储的数字类型4399(js解释器会将字符串'4399'调用Number()转换为4399,再去计算),  typeof tset 返回 'number', 'number' == 'number',返回 true
D选项 变量test中存储null,  typeof tset 返回 'object', 'object' == 'object',返回 true
发表于 2017-08-05 22:39:17 回复(4)
null表示的是一个空对象指针,所以typeof的结果是object
发表于 2018-05-09 20:35:31 回复(0)

typeof的取值。

Undefined "undefined"
Null "object"
Boolean "boolean"
Number "number"
String "string"
Symbol (ECMAScript 6 新增) "symbol"
宿主对象(由JS环境提供) Implementation-dependent
函数对象 ( [[Call]] 在ECMA-262条款中实现了) "function"
任何其他对象 "object"

还有字符串和数字相加减的方法。
简单说就两点:
若是‘+’,字符串拼接;如果操作数存在对象、数值、布尔值,调用toString()方法,继续字符串拼接。
若是‘-’,按照数值来算。

发表于 2017-08-10 13:45:33 回复(3)
typeof的返回值共有6种,分别为number, boolean, string, undefined, object, function.而B答案中float属于number,number包含了float,所以不能等于float,所以返回false。
发表于 2018-04-21 18:14:48 回复(0)
注意:typeof null == “undefined”
发表于 2021-09-09 09:46:19 回复(0)
首先说明一下选项执行顺序,以A为例:
var test=1;typeof test=='number';
第一个语句是变量声明和初始化,第二个语句执行顺序是先执行 typeof test,取得返回值之后,在进行等式判断;但是我错误以为的执行顺序是先进行等式判断,再执行 typeof!!!
但这道题其实主要考察 typeof 的返回值,最新如下:
  • "undefined"  
  • “boolean”
  • “number”
  • “string”
  • “function”
  • “object”
  • “symbol”(ECMAScript 2015新增)
  • “bigint”(ECMAScript 2020 新增,绝大部分游览器尚未支持,所以一般见不到)
更多信息可查看:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/typeof
发表于 2021-01-10 16:34:42 回复(0)
没有float类型 😂
发表于 2021-05-24 22:05:17 回复(0)


编辑于 2019-09-18 11:37:31 回复(0)
javascript 的基本数据类型
undefined 
boolean
string
number
null
还有一种复杂的数据类型:object 
object 值为对象或者null
function 值为函数
发表于 2019-04-29 16:16:41 回复(0)

基本数据类型

原始值:number、string、boolean、undefined、null
引用值:Array、Function、Object

发表于 2018-12-21 08:32:43 回复(0)
undefined、null、boolean、string、number,object
发表于 2017-12-08 13:42:51 回复(0)
  • ES6之前,原始类型有number,string,boolean,null,undefined;内置对象类型有function,array,date,regexp,error;以及object;typeof运算中,需要注意的有
    • typeof null 返回object
    • 对象的typeof运算,只有两个返回值,object或function;想返回array、date、自定义类型?
      • Object.getPrototypeOf(parm)
      • Object.prototype.toString.call(obj).slice(xx)
        是两个可选的方法
发表于 2017-12-08 11:55:40 回复(0)
选项A   Uncaught ReferenceError: Invalid left-hand side in assignment,不能正常执行
选项B    typeof的结果只有基本数据类型 number string boolean undefined object function  不会有float
发表于 2017-08-02 22:07:26 回复(1)
b,返回简单数据类型只有number string undefined
发表于 2017-07-22 13:06:42 回复(0)
b,f
b中不为float
f中不是对象
发表于 2017-07-13 18:01:05 回复(1)
加号可以让数字转化为字符,减号和乘除可以让字符转化为数字
发表于 2021-09-04 14:17:16 回复(0)
JavaScript为弱类型,只有number,代表数值,特殊的NaN: typeof NaN也是number. 至于number是整数还是浮点数就没有很明确,由内存自己分配。
发表于 2021-08-28 09:27:38 回复(0)
答案是B

发表于 2017-07-09 10:42:53 回复(0)