JavaScript基础

Stella981
• 阅读 718

1,js组成

核心:ECMAScript标准

                  此标准指定了js的基础语法,数据类型,关键字,操作符,对象;

DOM:文档对象模型标准(Document object Model)

                  是js针对xml html的程序编程接口;DOM把一个页面映射为多层的节点结构;DOM是有DOM核心和DOM HTML组成;DOM核心规定的是如何映射XML文档结构;DOM HTML是其拓展;用来实现对HTML文档的映射; 

                 DOM LEVEL1

                 DOM LEVEL2

                 DOM LEVEL3              

BOM:浏览器对象模型(Browser Object Model)

                 主要是对浏览器来做描述;提供对浏览器的操作接口;

2,ECMAScript

       ECMAScript是js的核心标准;他定义了基础语法,数据类型,关键字,操作符,对象;

JS数据类型:

              JS是弱类型脚本语言,数据类型分为有 字符串、数字、布尔、数组、对象、Null、Undefined 数组8种;但是定义去没有像Java那样的  int  必须定义为int i=???;JS定义变量都是  var a=???;

              例如:

                   基础类型变量定义: var a = 6;   var b= '6'; var c="6";  

                   对象类型变量的定义创建:function  createPerson(name,age,sex){

                                                                   var person = new Object();

                                                                  person.perName = name;

                                                                  person.perAge = age;

                                                                  person.perSex = sex;

                                                                  return person;

                                                       }

                      数组:var arrayObj = new Array(); //创建一个数组

var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度

var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); //创建一个数组并赋值

基础语法:

                    流程控制语句  if             if(a =6){....};

                    循环语句:

                               for(...;...;...)   for(var i=1 ;i< a ; i++){...}

                               while(...)          while(a<6){..............}

                                do.........while(.......)    do ..... while()

DOM

节点:

             文档中的不同组成元素都是一个节点;

Node层级:

               JavaScript基础

            节点彼此都有等级关系。HTML 文档中的所有节点组成了一个文档树(或节点树)。HTML 文档中的每个元素、属性、文本等都代表着树中的一个节点。树起始于文档(document)节点,并由此继续伸出枝条,直到处于这棵树最低级别的所有文本节点为止。

BOM

        他包含的不同的对象;我们可以通过不同的对象对浏览器进行不同操作;

1.window

        常用方法:   window.open(URL,name,features,replace),四个都为可选参数

                                                     URL:新窗口中显示的文档的 URL

                                                     name:声明了新窗口的名称

                                                     features:声明了新窗口要显示的标准浏览器的特征

                                                     replace:布尔值,true - URL 替换浏览历史中的当前条目。 false - URL 在浏览历史中创建新的条目。 

                            window.close()关闭当前窗口

                            moveTo(x,y) 方法可把窗口的左上角移动到一个指定的坐标。

                            moveBy(x,y) 方法可相对窗口的当前坐标把它移动指定的像素。

                            resizeTo(width,height) 方法用于把窗口大小调整为指定的宽度和高度。

                            resizeBy(x,y) 方法用于根据指定的像素来调整窗口的大小。

                           setTimeout(epress,time) 方法用于在指定的毫秒数后调用函数或计算表达式。

                          clearTimeout(timeID)停止已经启动的定时器

2,Location对象

                  Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。

                常用方法:

                            hash:设置或返回从井号 (#) 开始的 URL(锚)。

                            host:设置或返回主机名和当前 URL 的端口号

                            hostname:设置或返回当前 URL 的主机名。

                            href:设置或返回完整的 URL。

                            pathname:设置或返回当前 URL 的路径部分

                            port:设置或返回当前 URL 的端口号

                            protocol:设置或返回当前 URL 的协议。

                            search:设置或返回从问号 (?) 开始的 URL(查询部分)。

                           assign()加载新的文档。

                           reload()重新加载当前文档。

                           replace()用新的文档替换当前文档。

3,History对象

            其实就是来保存浏览器历史记录信息。

            属性有:length,返回浏览器历史列表中的 URL 数量。

           常用方法有:

                 back()加载 history 列表中的前一个 URL。

                 forward()加载 history 列表中的下一个 URL。

                 go()加载 history 列表中的某个具体页面。

                 如常见的返回上一页:History.go(-1)和history.back()

4,screen对象

                  Screen 对象中存放着有关显示浏览器屏幕的信息。

                  常见的属性有:

                              availHeight:返回显示屏幕的高度

                              availWidth:返回显示屏幕的宽度

                              colorDepth:返回目标设备或缓冲器上的调色板的比特深度。

                              height:返回屏幕区域的实际高度

                              width:返回屏幕区域的实际宽度

5,Navigator对象

            包含的属性描述了正在使用的浏览器

                appName:返回浏览器的名称。

                appVersion:返回浏览器的平台和版本信息。

                platform:返回运行浏览器的操作系统平台。

                appCodeName:返回浏览器的代码名。

JS与JSON


   JSON对象和JS对象有所不同;主要区别在于属性值js对象属性名可以不用“”但是json对象必须;

    JS解析JSON:

           1.eval()函数

           2,JSON内置对象的stringify()(把js对象序列化为json字符串)  或者  parse()(吧json字符串转化为js对象)方法;

      两种方法的区别:

                   第一种方法存在风险,如果读取的json字符串存在语法错误则会报错;

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Karen110 Karen110
3年前
一篇文章带你了解JavaScript日期
日期对象允许您使用日期(年、月、日、小时、分钟、秒和毫秒)。一、JavaScript的日期格式一个JavaScript日期可以写为一个字符串:ThuFeb02201909:59:51GMT0800(中国标准时间)或者是一个数字:1486000791164写数字的日期,指定的毫秒数自1970年1月1日00:00:00到现在。1\.显示日期使用
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
JS 对象数组Array 根据对象object key的值排序sort,很风骚哦
有个js对象数组varary\{id:1,name:"b"},{id:2,name:"b"}\需求是根据name或者id的值来排序,这里有个风骚的函数函数定义:function keysrt(key,desc) {  return function(a,b){    return desc ? ~~(ak
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这