js-基础(1)

javascript由三部分组成:核心,DOM,BOM
核心——ECMAScript,可以运行浏览器/单纯的JS引擎
    console.log(‘hello’);
DOM——操作HTML,需要浏览器
    document.write(‘<hr/>’);
BOM——与浏览器交互,需要浏览器
    window.alert(‘用户名已存在!请重试!’);    //弹出一个警告框
    window.prompt(‘请输入用户名:’);        //弹出一个输入提示框
    window.confirm(‘您确定要关闭当前页面吗?’);    //弹出一个确认框

常见的浏览器的核心:
    (1)IE的核心:Trident(双引擎)
    (2)Chrome的核心:Webkit(渲染引擎)+V8(脚本解释)
    (3)Safari的核心:Webkit(双引擎)
    (4)Opera的核心:Presto(双引擎-o-) / Webkit(双引擎)
    (5)Firefox的核心:Gecko(双引擎)
    
数据类型转换函数:
    toString()
        转换成字符串,所有数据类型均可以转换为string类型
    parseInt()
        解析出一个string或number的整数部分
        如果没有可以转换的部分,则返回NaN
    parseFloat()
        解析出一个string的浮点数部分
        如果没有可以转换的部分,则返回NaN
    Number()
        把一个string解析为number
        如果包含非法字符,则返回NaN
        
isNaN函数
    isNaN()    
        用于判断其参数是否为一个“非数字(NaN)”值
        如果把NaN与任何值包括自身相比得到的结果均是false,所以要判断某个值是否是NaN,不能使用==或===运算符。这种情况下,只能使用isNaN()函数
        通常用于检测类型转换函数的运算结果,以判断它们表示的是否是合法的数字
        例:
            console.log(isNaN('123.4a'));                    //true
            console.log(isNaN(parseInt('123.4a')));            //false
            console.log(isNaN(parseFloat('123.4a')));        //false
            console.log(isNaN(Number('123.4a')));            //true

强制转换和自动转换
    自动转换:  ‘abc’+123   123+true
    强制转换:
            var n1 = 123;
            var s1 = n1.toString();
            var s2 = String(n1);
            var s3 = ‘456.789abc123’;
            var i1 = parseInt(s3);        //456
            var f1 = parseFloat(s3);    //456.789
            var n2 = Number(s3);        //NaN
            
比较null和undefined的区别    
    null
        语义:存在该数据,但当前还不存在确定的值(存在,但却还没有确定的值)
        null在程序中代表“无值”或者“无对象”
        可以通过给一个变量赋值null来清除变量的内容
        例:
            var demo = new Object();
            demo.manager = null;
    undefined
        语义:不存在该数据(不存在)    
        声明了一个变量但从未赋值或者对象属性不存在
        例:
            var msg;
            console.log(msg);

关系运算符
    >        number和string比较时,自动把string解析为number
    <        number和string比较时,自动把string解析为number
    >=        number和string比较时,自动把string解析为number
    <=        number和string比较时,自动把string解析为number
    ==        number和string比较时,自动把string解析为number
    !=        number和string比较时,自动把string解析为number
    ===        只有类型、值都相同,才判定为true
    !==        只要类型或值有一项不同,即判定为true
补充运算符:
    typeof:  用于判定变量的类型
    例:
        var str;
        console.log(str);        //undefined

URL和URI的关系
    URI
        URI:Unified Resource Identifier——不能出现空白字符、中文
        URI 是一个用于标识某一互联网资源名称的字符串。 该种标识允许用户对任何(包括本地和互联网)的资源通过特定的协议进行交互操作。URI一般由三部分组成:一、主机名。二、标志符。三、相对URI。
        协议://用户名:密码@主机名(IP地址):端口号/路径/名称?查询字符串#锚点名
        如:  
               ftp://tom:123@192.168.0.1:2121/day23/img/1.jpg
            http://www.baidu.com/index.php?w=javascript
        总结:URL是一种特殊的URI    
    URL
        URL:Unified Resource Locator
        URL:URL 统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。
        基本URL包含模式(或称协议)、服务器名称(或IP地址)、路径和文件名,如“协议://授权/路径?查询”。完整的、带有授权部分的普通统一资源标志符语法看上去如下:协议://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志
        如:  
               ftp://tom:123@192.168.0.1:2121/day23/img/1.jpg
            http://www.baidu.com/index.php?w=javascript
       
    URN:  <a href=”mailto: admin@tarena.com”>给管理员发邮件</a>

js-基础(1)的更多相关文章

  1. js 基础篇(点击事件轮播图的实现)

    轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...

  2. js 基础

    js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避 ...

  3. js基础练习二之简易日历

    今天学到了js基础教程3,昨天的课后练习还没来的及做,这个是类似简易日历的小案例,视频还没听完,今晚继续...... 先看效果图: 其实做过前面的Tab选项卡,这个就很好理解了,通过鼠标放在不同月份月 ...

  4. [JS复习] JS 基础知识

    项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display  :inline or bloc ...

  5. JS基础(超级简单)

    1     JS基础(超级简单) 1.1 数据类型 1.1.1   基本类型: 1)        Number:特别注意:NaN的检测方法:Nan!=NaN;或者使用isNaN方法 2)       ...

  6. Node.js基础与实战

    Node.js基础与实战 Node.jsJS高级进阶 NODE原理与解析 REPL交互环境 模块与NPM Buffer缓存区 fs文件操作 Stream流 TCP&UDP 异步编程 HTTP& ...

  7. js基础到精通全面教程--JS教程

    适合阅读范围:对JavaScript一无所知-离精通只差一步之遥的人 基础知识:HTML JavaScript就这么回事1:基础知识 1 创建脚本块 1: <script language=”J ...

  8. JS基础知识总结

      js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划() ...

  9. js基础篇——call/apply、arguments、undefined/null

    a.call和apply方法详解 call方法: 语法:call([thisObj[,arg1[, arg2[,   [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象 ...

  10. js基础知识总结(2016.11.1)

    js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避 ...

随机推荐

  1. 实现Android Studio JNI开发C/C++使用__android_log_print输出Log

    相信很多人在刚开始学习Android JNI编程的时候,需要输出Log,在百度Google搜索的时候都是说需要在Android.mk中加入LOCAL_LDLIBS+= -L$(SYSROOT)/usr ...

  2. How to programmatically new a java class which implements sepecified interface in eclipse plugin development

    http://w3facility.org/question/how-to-programmatically-new-a-java-class-which-implements-sepecified- ...

  3. ngnix编译遇到的问题.

    总结:先后遇到libz库文件没有正确的链接和pcre库文件没有正确的链接 1./configure后提示需要zlib 2.locate zlib,系统中没有zlib的共享库so文件,但是有一些头文件, ...

  4. java 调用 .net webservice 示例

    String url="http://IP:端口/LisService.asmx"; String methodName="GetLisResultForBlood&qu ...

  5. Xshell小技巧

    1. 鼠标右键粘贴 工具->选项->鼠标->向右按钮->(paste the clipboard contents.) 2. 选定文本自动复制到剪贴板 工具->选项-&g ...

  6. 百度Web富文本编辑器ueditor在ASP.NET MVC3项目中的使用说明

    ====================================================================== [百度Web富文本编辑器ueditor在ASP.NET M ...

  7. 使用cocos2d-x v3.1开发小游戏(基本框架)

    小游戏的组成 欢迎界面 在游戏资源未全部加载完之前就需要载入,避免进入游戏会有一段黑屏时间. 可以用来展示游戏名称或者开发者logo. 开始菜单界面 一般用于显示游戏名称和关卡选择(或者称游戏难度选择 ...

  8. NSXMLParser读取XML文件并将数据显示到TableView上

    关于XML,有两种解析方式,分别是SAX(Simple API for XML,基于事件驱动的解析方式,逐行解析数据,采用协议回调机制)和DOM(Document Object Model ,文档对象 ...

  9. SQL Server 2016 需要单独安装SSMS

    默认安装完 MSSQL 后,不自带 SSMS 的管理工具了,需要的话可以单独安装,貌似更专业了一些. https://msdn.microsoft.com/library/mt238290.aspx ...

  10. android多国语言文件夹文件汇总

    android多国语言文件夹文件汇总如下: 中文(中国):values-zh-rCN 中文(台湾):values-zh-rTW 中文(香港):values-zh-rHK 英语(美国):values-e ...