一,Javascript的组成
ECMAScript:翻译,核心,解释器,
DOM:文档对象模型,Document Object Model
操作HTML的能力,document对象
BOM:浏览器对象模型,Browser Object Model
window对象
ECMA:几乎没有兼容问题
DOM:有一些操作部兼容
BOM:没有兼容问题,完全不兼容
二,变量的类型
5种基本类型:unll,undefined,boolean,number,string
1种复杂类型:object
5种引用类型:Array,Date,RegExp,Object,Function
3种基本包装类型:Boolean,Number,String
2种单体内置对象:Global,Math
undefined:没有定义的变量,var声明没有初始化的变量
一个变量应该只存放一种类型的变量
类型转换函数:Boolean(),Number(),parseInt(),parseFloat(),string()
NaN,not a number,非数字,isNaN(),如果传人的参数不是数字返回true
隐式类型转换:if语句自动转换为boolean值,==自动转换两边类型,-自动把两边操作数转换为数字
三,变量的作用域
四,闭包
五,命名规范
六,运算符
隔行换色,对2求模,等于=(0,1)
秒转时间,秒数/60为分,js中/可以得到小数的结果,秒数%60得到结果为秒
七,流程控制
if,switch,?:三目运算符
八,json
json中没有length属性,json中的循环,
for(var i in json)来循环json的中的数据
数组中可以for-length循环或者for-in循环

js深入
一,函数的返回值,
函数没有return,返回undefined
二,函数传参(不定参)
argument,保存传人的参数的一个类数组的对象
取非行间样式,(IE中).currentStyle获取非行间样式,.style获取行间样式
(chrome,ff)getComputedStyle(odiv,false).width
三,数组基础
var arr=[];性能高
var arr = new Array(12,12,2)
设置数组的length,可以改变数组的个数
push(),在数组的尾部添加项,有参数
pop(),在数组的尾部删除项,无参数
shift(),在数组的头部删除项,无参数
unshift(),在数组的头部添加项,有参数
splice(删除的起始项,删除的项数,添加的项数),索引基于0
concat(),拼接数组,
join(分隔符),基于指定的分隔符拼接数组
sort(),只识别字符串,传人一个比较函数function(n1,n2){return n1-n2;}

智能社讲解js基础的更多相关文章

  1. JavaScript学习--(智能社视频)

    JavaScript学习,这是智能社官网上的JS视频,讲解的挺不错的,就是没有视频的demo,在视频中附上自己编写的一些demo... 下载地址:http://pan.baidu.com/s/1cPz ...

  2. JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象

       前   言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...

  3. js基础梳理-如何理解作用域和作用域链?

    本文重点是要梳理执行上下文的生命周期中的建立作用域链,在此之前,先回顾下关于作用域的一些知识. 1.什么是作用域(scope)? 在<JavaScritp高级程序设计>中并没有找到确切的关 ...

  4. 智能社官网顶部导航实现demo

    从智能社的blue老师公开课中学习到了很多,在此表示感谢. 这个导航很好玩,于是就想实现一个. html <div id="box"> <ul> <l ...

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

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

  6. js 基础

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

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

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

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

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

  9. JS基础(超级简单)

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

随机推荐

  1. druid discard long time none received connection问题解析

    最新项目中用的druid连接数据库遇到一个困扰很久的问题 1 开始用的druid版本是1.1.22版本,由于业务需求,单个连接需要执行很久,理论上不需要用到自动回收,但为了安全,还是加了自动回收,时间 ...

  2. 创建Django REST framework工程

    1.创建工程虚拟环境 2.创建工程目录和调整目录结构: 创建Django的项目 创建docs 用于存放一些说明文档资料 创建scripts 用于存放管理脚本文件 创建logs 用于存在日志 在与项目同 ...

  3. 使用Spring的RestTemplate进行接口调用

    引自:http://www.zimug.com/ 1.常见的http服务的通信方式 经常使用的方式有HttpClient.OkHttp.RestTemplate.其中RestTemplate是一种更优 ...

  4. 使用存储过程在mysql中批量插入数据

    一.在mysql数据库中创建一张表test DROP TABLE IF EXISTS `test`; CREATE TABLE `test` ( `id` INT (11), `name` VARCH ...

  5. 微信小程序 发送模板消息的功能实现

    背景 - 小程序开发的过程中,绝大多数会满足微信支付 - 那么,作为友好交互的体现,自然就会考虑到支付后的消息通知咯 - 所以,我的小程序项目也要求完成这个效果,so.分享一下自己的实现步骤,以方便道 ...

  6. linux搭建ARM可调式环境

    0x00 前言 本文中所介绍的方法目前只测试了单个的demo,并没有拿大型的项目做测试,但是应该是大同小异.这里介绍两种方法,一种是有独立的ARM硬件,另一种是依靠qemu实现的模拟化,其实其本质都是 ...

  7. /bin/sh: cc: command not found

    make的时候报错:/bin/sh: cc: command not found 解决: 1. sudo yum -y install gcc gcc-c++ libstdc++-devel 2. m ...

  8. Swagger-UI展示接口

    简单介绍API的管理工具Swagger的UI模块. 简介:swagger ui就是一个能整合到项目中让api的注释能够生成到一个网页上.能简单测试和给前端看. 第一步:添加引用 打开NuGet程序包管 ...

  9. 配置HDFS的HA

    配置前准备: -- 配置hadoop -- 配置ZooKeeper,传送门:https://www.cnblogs.com/zhqin/p/11906106.html 安装配置好hadoop和ZooK ...

  10. get uuid

    https://wx2.qq.com/?&lang=zh_CN /** * 启动二维码登录 */ function doQrcodeLogin() { loginFactory.getUUID ...