JavaScript组成:

◆ECMASCript    语法标准
◆DOM         JS操作网页(api)

◆BOM   操作浏览器的api

JavaScript特点:

◆简单易用    ==》可以直接使用已封装的方法

◆解释执行   【js属于解释执行的语言】

☞解释执行:  代码会立即执行,不需要经过编译。

☞编译执行:
C# ===>代码源文件====》编译处理(.dll)===>计算机执行的是.dll文件

◆基于对象

☞继承性
  ☞封装
☞多肽

◆书写位置特点:

☞内嵌式写法,推荐将js代码放到body标签之后(代码从上往下执行)
 ☞外联式写法,推荐能将合并的js文件合并到一个js文件中访问。

关于break、contain:

当循环中遇到break,程序立马结束当前循环

当循环中遇到continue,程序会结束本次循环,进入到下一次循环中。

String()函数存在的意义:有些值没有toString(),这个时候可以使用String()。比如:undefined和null

函数的三要素:

功能,参数,返回值

1。 函数的参数

声明中的参数只是一个占位符(坑),没有实际的值,是形式参数,也叫形参。

调用时传入的参数才是真正带内容的参数,是实际参数,也叫实参。

总结:

函数执行时,即使修改了形参的值,但是并不会影响实参的值

  形参:形式上的参数,其实就是坑

  实参:函数调用时传递的参数

  函数调用时,会把实参的值赋值一份给形参,用来填坑,这个时候即便修改了形参,对实参是没有影响到 。

2. 函数的返回值

    函数的调用结果就是返回值,因此我们可以直接对函数调用结果进行操作。

  1. 函数return之后的语句不会执行。
  2. 函数如果没有写ruturn语句,默认在函数执行完的时候会添加一个return undefined;
  3. 函数如果只写了return;那么相当于return undefined;

代码出问题的调试顺序:

  1. 首先看console,有没有报错,如果报错了,把相应的错误解决了就行。
  2. 如果console没有报错,到sources里面打断点,进行单步调试

单步调试技巧:

  1. F8:跳到下一个断点,如果后面没有断点了,那么代码直接执行完。
  2. F10:单步调试(跳过函数调用)
  3. F11:单步调试(进入函数调用)
  4. F12:跳出函数调用
  • 没有重载,只会覆盖
  1. 如果定义了两个相同的函数,那么后面的函数会覆盖掉前面的函数。
  2. 在js语言里面,形参的个数和实参的个数可以不一致

  a) 如果实参个数多于形参个数:多余的实参会被舍弃

  b) 如果实参个数少于形参个数:缺少的实参值为undefined。

什么是对象? 

  • 现实生活中的对象

对象指的是一个具体的东西,比如一个人,一个学生,一个手机

对象具有行为和特征

  • JavaScript中的对象

js中的对象其实就是对现实生活中对象的一个抽象。

事物的行为用方法来表示。

事物的特征用属性来表示。

操作对象属性的两种方式

第一种方式:.语法访问对象的属性

    第二种方式:关联数组的方式(把对象当成数组,只是数组的键不再是数字,而是字符串)

js基础的更多相关文章

  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. Decode Ways

    https://leetcode.com/problems/decode-ways/ A message containing letters from A-Z is being encoded to ...

  2. 【备忘】Conky配置

    贴配置: background yes use_xft yes xftfont Sans:size= xftalpha 0.8 update_interval own_window yes own_w ...

  3. Archlinux安装MySQL5.7.14压缩包版

    现在Arch官方源里是MariaDB,MySQL扔到AUR里去了...感觉还是自己安装好些... (参考资料:度娘.官方文档) 贴配置: lts版的 在Vbox虚拟机测试 按照官方文档的安装步骤: 创 ...

  4. 面向对象Part2

    `变量: 成员变量:又叫全局变量,定义在类中,方法外面. 1).类成员变量.   使用Static 2).实例成员变量.  没有使用Static. 局部变量:出了成员变量,其他的都是局部变量. 1). ...

  5. ubuntu-docker-etcd-swarm-shipyard-portainer

    --- env --- root@node1:~# cat /etc/issueUbuntu 12.04.4 LTS \n \l root@node1:~# docker -vDocker versi ...

  6. ".NET Compact Framework v2.0 could not be found."

    参考: http://blog.csdn.net/godcyx/article/details/7348431 问题原因: That's a known issue where VS can't di ...

  7. c模拟c++ const 转换

    #include <stdio.h> int main(){ const int constant = 21; const int* const_p = &constant; in ...

  8. 分享一个常用Adb命令

    分享一个常用Adb命令 首先 首先感谢@xuxu的常用adb命令,收益良多,但是已经不能满足于我,所以补充了下. 再者 好久没发帖了,最近论坛老司机们都在讨论/总结,我就用这个干货回报吧. 最后 基于 ...

  9. 利用set排序数组并且去掉重复的数组元素

    public class testList { public static void main(String[] args){ java.util.List<String> ls = ne ...

  10. 手把手教你玩转nginx负载均衡(一)----使用vitualBox创建虚拟机

    引言 作为一个web程序员,有时候需要想尽办法来利用有限的资源来产生最大程度的负载,除了提高硬件配置,增加带宽之外,CDN加速,DNS加速,缓存,还可以利用反向代理.但是要说反向代理,就不的不说ngi ...