知道面试题为什么都爱给 window 加 name 属性吗?

简介: 好了直接上代码。以下代码输出什么?console.log(name)console.log(window.name)console.log(typeof window.name)var name = 5console.log(name)console.log(typeof name)我觉得大部分人都会答错。

好了直接上代码。

以下代码输出什么?

console.log(name)
console.log(window.name)
console.log(typeof window.name)

var name = 5

console.log(name)
console.log(typeof name)

我觉得大部分人都会答错。

想一下,然后看下面的答案。

console.log(name)
console.log(window.name)
// '' 

console.log(typeof window.name)
// string

var name = 5

console.log(name)
// '5'
console.log(typeof name)
// string

???为什么会是这样的结果呢?

答案就是,window.name 是一个 window 对象的内置属性。

window.open(URL, name, features, replace)

// 这是一个打开新页面的函数接口,有四个参数,其中第二个 name 参数其实设置的就是 window.name 的值 

简单测试一下,

window.open('', 'newWindow')

// 会打开一个新的空白页面

// 然后在新页面打开控制台打印一下 name 属性

console.log(name)
// 'newWindow'

这里就清楚明白了,

需要注意的一点是, window.name 不管给它赋什么值,它都会转化为 string 类型。

// 例如这样
var name = { a: 0 }
console.log(name)
// [Object Object]

name = [0, 2, 5]
console.log(name)
// 0,2,5

原文地址:http://blog.csdn.net/qq_25243451/article/details/78933282

目录
相关文章
|
1月前
|
消息中间件 前端开发 Android开发
Android面试题自定义View之Window、ViewRootImpl和View的三大流程
Android开发中,View的三大核心流程包括measure(测量)、layout(布局)和draw(绘制)。MeasureSpec类在测量过程中起到关键作用,它结合尺寸大小和模式(EXACTLY、AT_MOST、UNSPECIFIED)来指定View应如何测量。onMeasure方法用于自定义View的测量,布局阶段,ViewGroup调用onLayout确定子元素位置,而draw阶段按照特定顺序绘制背景、内容、子元素和装饰。整个流程始于ViewRootImpl的performTraversals,该方法触发测量、布局和绘制。
24 0
|
前端开发
前端面试题:1.页面加载完成(onload)之前触发的事件;2.History,Location,Window,Navigation的区别;3.e.target和e.currentTarget的区别
★Navagator:提供有关浏览器的信息 ★Window: Window对象处于对象层次的最顶层, 它提供了处理Navagator窗口的方法和属性 ★Location:提供了与当前打开的URL-工作的方 法和属性,是一个静态的对象 ★History:提供了与历史清单有关的信息 ★Document:包含与文档元素一起工作的对象,它将这些元素封装起来供编程人员使用
245 0
|
Android开发 数据格式 XML
Android 面试(八):说说 Activity、View、Window 之间的关系吧
连载内容镇楼:Android 面试(一):说说 Android 的四种启动模式Android 面试(二):如何理解 Activity 的生命周期Android 面试(三):用广播 BroadcastReceiver 更新 UI 界面真的好吗?Andro...
1983 0
|
3天前
|
存储 缓存 网络协议
复盘女朋友面试4个月的Java基础题
这篇文章是关于Java基础面试题的复盘,涵盖了HashMap原理、对象序列化作用等高频面试问题,并强调了Java基础知识的重要性。
复盘女朋友面试4个月的Java基础题
|
5天前
|
存储 NoSQL Java
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
这篇文章是关于Java面试中的分布式架构问题的笔记,包括分布式架构下的Session共享方案、RPC和RMI的理解、分布式ID生成方案、分布式锁解决方案以及分布式事务解决方案。
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
|
28天前
|
SQL Java Unix
Android经典面试题之Java中获取时间戳的方式有哪些?有什么区别?
在Java中获取时间戳有多种方式,包括`System.currentTimeMillis()`(毫秒级,适用于日志和计时)、`System.nanoTime()`(纳秒级,高精度计时)、`Instant.now().toEpochMilli()`(毫秒级,ISO-8601标准)和`Instant.now().getEpochSecond()`(秒级)。`Timestamp.valueOf(LocalDateTime.now()).getTime()`适用于数据库操作。选择方法取决于精度、用途和时间起点的需求。
31 3
|
1月前
|
存储 算法 Java
Java面试之SpringCloud篇
Java面试之SpringCloud篇
67 1
|
1月前
|
缓存 NoSQL Redis
Java面试之redis篇
Java面试之redis篇
55 0
|
1月前
|
SQL 关系型数据库 MySQL
java面试之MySQL数据库篇
java面试之MySQL数据库篇
35 0
java面试之MySQL数据库篇
|
1月前
|
存储 缓存 前端开发
Java八股文面试之多线程篇
Java八股文面试之多线程篇
52 0
Java八股文面试之多线程篇