内置对象的定义

由 javaScript 实现提供的、不用自己创建,这些对象在 ECMAScript 程序执行之前就已经存在了。

意思就是说,开发人员不必显示地实例化内置对象;因为它们已经实例化了。

JavaScript只定义了两个内置对象:Global和 Math

Global(全局)对象概述

javacript 中一个特别的对象,因为这个对象是不存在的。在JavaScript中不属于任何其他对象的属性和方法,都属于它的属性和方法。

所以,事实上,并不存在全局变量和全局函数;所有在全局作用域定义的变量和函数,都是 Global 对象的属性和方法。

因为 JavaScript没有定义怎么调用 Global 对象,所以,Global.属性或者 Global.方法()都是无效的。(Web 浏览器将 Global 作为 window 对象的一部分加以实现)

var box = 100;
//alert(Global.box);//会报错
alert(window.box); //可以使用window来调用

Global 对象的方法_编码

URI 编码可以对链接进行编码,以便发送给浏览器。它们采用特殊的 UTF-8 编码替换所有无效字符,从而让浏览器能够接受和理解。

不会对本身属于 URI 的特殊字符进行编码,例如冒号、正斜杠、问号和#号

URI 编码方法—encodeURI()和encodeURIComponent()

encodeURIComponent()会对它发现的任何非标准字符进行编码

因为 encodeURIComponent()编码比 encodeURI()编码来的更加彻底,一般来说encodeURIComponent()使用频率要高一些。

var box = '//Lee 李';
console.log(encodeURI(box)); //只编码了中文,结果是这样//Lee%20%E6%9D%8E var box = '//Lee 李';
console.log(encodeURIComponent(box)); //特殊字符和中文编码了,结果是这样%2F%2FLee%20%E6%9D%8E

Global 对象的方法_解码

使用了 URI 编码过后,还可以进行解码

URI解码方法—decodeURI()和decodeURIComponent()

var box = '//Lee 李';
box1 = encodeURI(box); //编码
console.log(box1);
console.log(decodeURI(box1));//解码 var box2 = '//Lee 李';
box2 = encodeURIComponent(box); //编码
console.log(box2);
console.log(decodeURIComponent(box2)); //解码

Global 对象的方法_eval()

主要担当一个字符串解析器的作用,他只接受一个参数,而这个参数就是要执行的 JavaScript 代码的字符串。(即可以解析javascript代码)

eval()方法的功能非常强大,但也非常危险。因此使用的时候必须极为谨慎。特别是在用户输入数据的情况下,非常有可能导致程序的安全性,比如代码注入等等。

eval('var box = 100');     //解析了字符串代码
console.log(box); //
eval('console.log(100)'); //同上 eval('function box() {return 123}'); //函数也可以
console.log(box()); //调用这个函数结果是123

 

Global 对象的方法_parseInt(),parseFloat

返回由字符串转换得到的整数

parseFloat()方法和parseInt()方法类似

var str = "123";
//从头开始解析,直到不能被解析为止
console.log(parseInt(str));//
console.log(parseInt("100"));//
console.log(parseInt("100abc"));//
console.log(parseInt("abc100"));//NaN
console.log(parseInt("100abc0"));// //将第一个参数按第二个参数转换,第二个参数是进制数,如2进制8进制16进制
console.log(parseInt("100",2));//

Global 对象的方法_isNaN

返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)。

如果值是 NaN, 那么 isNaN 函数返回 true ,否则返回 false 。

使用这个函数的典型情况是检查 parseInt 和 parseFloat 方法的返回值。

console.log(isNaN(100));//false
console.log(isNaN("jaav")); //true
console.log(isNaN(NaN));//true
console.log(isNaN(parseInt("123lee")));//parseInt("123lee")的结果是123,所以isNaN(123)为false
console.log(isNaN(parseInt("lee123")));//parseInt("lee123")的结果是NaN,所以isNaN(NaN)为true

Global 对象属性

Global 对象包含了一些属性:undefined、NaN、Object、Array、Function 等等。

console.log(Array); //返回构造函数:[Function: Array]
console.log(undefined); //undefined
console.log(Object); // [Function: Object]

window 对象

Global 没有办法直接访问,而 Web 浏览器可以使用 window 对象来实现一全局访问。

alert(window.Array); //返回构造函数

JavaScript的内置对象(Global对象)的更多相关文章

  1. ES6新特性:Javascript中内置的延迟对象Promise

    Promise的基本使用: 利用Promise是解决JS异步执行时候回调函数嵌套回调函数的问题, 更简洁地控制函数执行流程: 通过new实例化Promise,  构造函数需要两个参数, 第一个参数为函 ...

  2. 第一百零八节,JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式

    JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式 学习要点: 1.Global对象 2.Math对象 ECMA-262对内置对象的定义是:"由ECMASc ...

  3. JavaScript 标准内置对象

    JavaScript 标准内置对象或称全局的对象(global objects)不要和 全局对象(global object)混淆.这里说的全局的对象是说在全局作用域里的对象,全局作用域包含了全局对象 ...

  4. 一、JavaScript概述 二、JavaScript的语法 三、JavaScript的内置对象

    一.JavaScript的概述###<1>JavaScript的概念 又称ECMAScript,和java没有任何关系 嵌入在HTML元素中的 被浏览器解释运行的 一种脚本语言. ###& ...

  5. JavaScript 标准内置对象Promise使用学习总结

    Javascript标准内置对象Promise使用学习总结   by:授客 QQ:1033553122 1.   基础用法 var condition = true; let p = new Prom ...

  6. 单体内置对象——Global对象

    单体内置对象的定义:由ECMAScript实现提供的.不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前已经存在了.意思就是说:开发人员不必显式地实例化内置对象,因为他们已经实例化了. ...

  7. 【Unity】3.1 利用内置的3D对象创建三维模型

    分类:Unity.C#.VS2015 创建日期:2016-04-02 一.基本概念 Unity已经内置了一些基本的3D对象,利用这些内置的3D对象就可以直接构建出各种3D模型(当然,复杂的三维模型还需 ...

  8. javaScript的内置对象

    javaScript 有11种内置对象: Array . String .Date .Math . Boolean .Number . Function .Global .Error . RegExp ...

  9. JavaScript的内置对象和浏览器对象

    在javascript中对象通常包括两种类型:内置对象和浏览器对象,此外,用户还可以自定义对象. 对象包含两个要素:1.用来描述对象特性的一组数据,也就是若干变量,通常称为属性.2.用来操作对象特性的 ...

随机推荐

  1. dotnetcore-officeaddin-toolbox : Office 365 Add-in开发人员的工具箱

    在上一篇文章(.NET Core开源行动:一键创建Excel Add-in) 中我给大家展示了一套为Office 365 Add-in开发人员准备的模板库,你可以通过 dotnet new excel ...

  2. petapoco 实体中字段去掉关联(类似于EF中的NotMap)

    怎么才能让不是数据库表中的字段放在实体中而不影响正常的插入和更新呢? 找到 PetaPoco.cs 文件,打开之后,搜索插入方法(Insert),然后继续找到下一层方法 就能看到如下代码: 看到这个注 ...

  3. 理解 Python 中的可变参数 *args 和 **kwargs:

    默认参数:  Python是支持可变参数的,最简单的方法莫过于使用默认参数,例如: def getSum(x,y=5): print "x:", x print "y:& ...

  4. Java集合类源码解析:AbstractMap

    目录 引言 源码解析 抽象函数entrySet() 两个集合视图 操作方法 两个子类 参考: 引言 今天学习一个Java集合的一个抽象类 AbstractMap ,AbstractMap 是Map接口 ...

  5. 【Java每日一题】20170118

    20170117问题解析请点击今日问题下方的“[Java每日一题]20170118”查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; import jav ...

  6. Field 'id' doesn't have a default value错误解决方法

    Field 'id' doesn't have a default value 错误提示. 主键类型获取方式为"native"由数据库生成指定. 检查发现数据库中已存在Employ ...

  7. margin:0 auto是什么意思

    一.margin设置对象外边距 二.margin后面如果只有两个参数的话,第一个表示top和bottom,第二个表示left和right 因为0 auto

  8. 自定义简单版本python线程池

    python未提供线程池模块,在python3上用threading和queue模块自定义简单线程池,代码如下: #用threading queue 做线程池 import queue import ...

  9. 2018-05-09 5分钟入门CTS-尝鲜中文版TypeScript

    知乎原链 本文为中文代码示例之5分钟入门TypeScript的CTS版本. CTS作者是@htwx(github). 它实现了关键词和标准库的所有命名汉化. 本文并未使用附带的vscode相关插件(包 ...

  10. 被低估的.net(中) - 广州.net俱乐部2019年纲领

    这是被低估的.net系列的中篇.上篇在这里:被低估的.net(上) - 微软MonkeyFest 2018广州分享会活动回顾 中篇本来不是这样的,中篇的草稿大纲其实在写上篇之前就写好了,嗯,当时给张队 ...