美文网首页
全局对象

全局对象

作者: Mr_LvHeng | 来源:发表于2019-05-20 16:41 被阅读0次

全局对象

全局对象分为两种

ECMAScript规定

  • parseInt
  • parseFloat
  • Number( )
  • String( )
  • Boolean( )
  • Object( )
  • window.setTimeout( 函数, 时间 )
    • 作用传入一个函数在指定时间后执行
  • 等....

了解所有属性,Google搜索:MDN window

浏览器自带的私有属性 (浏览器自己添加的属性)

  • alert (弹窗提示)

  • prompt (用户输入)

    可以定义一个变量接收 用户输入的内容

  • confirm (用户确认)

    可以定义一个变量接收 返回布尔类型的两个值

  • console (开发者工具)

    可以在控制台输出

  • document

    • 规范是由W3C制定的
    • history 获取浏览器历史
  • 等....

简单类型与对象的区别

以Number为例

new一个Number对象

var n = new Number(1)
n.toString()
"1"

n.valueOf()
1

也就是以 new 的方式创建的 Number对象 可以通过 . 调用属性

但以普通的方法创建一个基本类型的number也可以使用这些函数方法

var n = 1
n.toString()

n.valueOf()
1

原因在于,在Js中,基本类型也可以使用这些函数方法

只不过基本类型的使用原理是创建一个不存在的临时对象,当调用时会掉用临时对象的函数方法,使用后会立即销毁临时对象和它的函数方法等。

这个临时对象是不存在的,只能临时使用的

这个区别在 String( )、Boolean( ) 、中同样适用

String 中实用的方法

var a = "hello"

//获取某一个索引对应的字符
a.charAt(0)
"h"
a.charAt(1)
"e"

a[0]
"h"
a[1]
"e"

//通过索引获取某一个字符的对应的编码
a.charCodeAt(0)
104
a.charCodeAt(1)
101

toString()用法

var a = 100
a.toString(16)
"64"  //得到的是16进制的100

常用API

去掉空格

> "   username   ".trim()
< "username"

字符串拼接

> var a1 = "hello"
> var a2 = "world"
> a1.concat(a2)
< "helloworld"

字符串剪切

var a = "hello"
a.slice(0,3)
"hel" //得到前三个字符,不包括第四个

全局函数之间的关系

共用属性

有些类型对象自己专属共用属性,那么在创建此类型对象时会先指向自己的专属的共用属性,再去指向所有对象类型的共用属性。

含有特殊共有属性的几个对象:

  • Number()
  • String()
  • Boolean()

案例:

Object.prototype // 所有类型对象的共用属性
Number.prototype // Number类型对象的共用属性
var n1 = new Number(1)
n1.__proto__ === Number.prototype  // true
n1.__proto__.__proto__ === Object.prototype  // true

Object() 的共用属性就是所有的共用属性

Object() 和其他类型对象的共用属性的区别案例:

Object.prototype // 所有类型对象的共用属性
var o1 = {}
o1.__proto__ === Object.prototype  //true

var n1 = new Number(1)
n1.__proto__ === Number.prototype  // true
n1.__proto__.__proto__ === Object.prototype  // true

__proto__prototype 的区别

  • __proto__ 是创建后的对象的共用属性的应用

  • prototype 是浏览器初始化时为了保留共用属性而指向系统自带的引用方式

相关文章

  • 全局对象与临时转换

    全局对象 ECMAScript 规定全局对象叫做 global,但是浏览器把 window 作为全局对象 这些全局...

  • 原型与原型链

    一、全局对象 ECMAScript把全局对象成为global,但浏览器里全局对象成为window 全局对象分为两种...

  • 探索C++对象存储空间

    1)全局对象,全局静态对象何时创建/析构? 全局对象在main函数调用之前被构造 全局对象存储在.data节 (本...

  • 原型和原型链

    JS里的内置对象 全局对象 ECMAScript 规定全局对象叫做 global,浏览器默认全局对象是window...

  • 全局对象

    全局对象:不用引用任何文件就能用的对象就是全局对象

  • JS基础原型与原型链

    1.全局对象window ECMAscript规定全局对象叫做global,但是浏览器把window作为全局对象(...

  • 原型与原型链

    全局对象 window ECMAScript 规定全局对象叫做 global,但浏览器里默认的全局对象是 wind...

  • 原型与原型链

    全局对象 ECMAScript 规定全局对象叫做 global,但是浏览器把 window 作为全局对象(浏览器先...

  • Day9

    全局对象: 在浏览器 JavaScript 中,通常 window 是全局对象, 而 Node.js 中的全局对象...

  • 简单类型与对象(复杂类型)的区别

    全局对象 ECMAScript 规定全局对象叫做 global,但是浏览器把 window 作为全局对象(浏览器先...

网友评论

      本文标题:全局对象

      本文链接:https://www.haomeiwen.com/subject/muakzqtx.html