1,面向对象,事件驱动

2,动态,交互性

3,解释性语言,非强(弱)类型变量:不用声明,解释时检查类型

4,区分大小写,嵌入html,句尾加分号,可以独立保存为一个外部文件,但其中不能包含<script></script>标签

5,js常用的语句:

document.write("this is my first js");

<a href="javaScript:alert('test alert')">test alert</a><br>

<a href="#" onclick="alert('test onclik')">test onclik</a>

<input type="button" value="button" onclick="testFunction(1);">

<script type="text/javascript" src="./js/hello.js"></script>

function testFunction(testNum){

quanjuVar02 = "在方法内没有var的全局变量";

}

var quanjuVar01 = "定义在方法外的全局变量";

with(document){

        writeln("with(对象)");

}

等同于:document.writeln("xxxx");

function member(name,sex){/* 构造函数 */

this.name = name;

this.sex = sex;

}

function showProperty(obj,objString){

var str = "";

for(var i in obj){//for循环

str += objString + "." + i + "=" + obj[i] + "<br>"; 

}

return str;

}

var obj = new member("刘德华","男");

document.writeln(showProperty(obj,"person"));
<script type="text/javascript" charset="UTF-8">

//js中日期的操作

var date = new Date();

var day = date.getDay();

if(day == 0 ){

day = "日";

}

document.writeln("直接打印全部时间:"+date+"<br>");

document.writeln("分开打印年月日:"+(date.getYear()+1900)+"年"

+(date.getMonth()+1)+"月"

+date.getDate() + "日"

+"星期"+day + "        "

+date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds()

+"<br>");

</script>
<script type="text/javascript" charset="UTF-8">

var fruit = new Array("apple","apple01","apple02");

for(var i=0; i<fruit.length;i++){

document.writeln(fruit[i]);

}

document.writeln("<br>");

var fruit01 = new Array(3);

fruit01 = new Array();

fruit01[0] = "apple";

fruit01[1] = "apple2";

fruit01[2] = "apple3";

for(var i=0; i<fruit01.length;i++){

document.writeln(fruit01[i]);

}

document.writeln("<br>");

var fruit03 = ["apple001","apple002","apple003"]

for(var i=0; i<fruit03.length;i++){

document.writeln(fruit03[i]);

}

document.writeln("<br>");

</script>
join() toString() reverse() valueOf()
二维数组,String操作:48
<script type="text/javascript" charset="UTF-8">

function isEmail(){

var ele_Email = document.getElementsByName("email")[0];

if(ele_Email.value.indexOf("@") == -1){

alert("please input right email");

}else{

alert("ok");

}

}

</script>

  <input type="text" name="email">

  <input type="button" value="check" onclick="isEmail();">
<script type="text/javascript" charset="UTF-8">

function member(name,sex){

this.name = name;

this.sex = sex;

this.display = display;//指定member对象的display方法

}

function display(){

var str = this.name + "=" + this.sex;

document.writeln(str);

}

var m1 = new member("lisi","man");

document.writeln("姓名="+m1.name+"<br>");

document.writeln("姓名="+m1.sex+"<br>");

document.writeln(m1.display()+"<br>");//推断出是函数,所以调用display()而不是this.display

</script>

function mOver(object){

object.color = "red";

}

function mOut(object){

object.color = "blue";

}

<font onclick="window.location.href='https://www.baidu.com'" onmouseover="mOver(this)" onmouseout="mOut(this)">百度</font>

this在这里是指font对象

定时器:

定时器名 = setTimeout("<表达式>",毫秒)

var num = 0;

function count(){

setTimeout("cou()",7000);//注意这里需要7秒才执行,但是后面的输出语句将不会等待

document.writeln("num="+num);

}

function cou(){

document.writeln("num="+num);

num ++ ;

}

</script>

  <input type="button" value="check" onclick="count();">


var sec = 0;

var timeId = setInterval("count()",1000);

function count(){

document.getElementById("num").innerHTML=sec++;

}

  <font color="red" id="num">0</font>秒钟

  <input type="button" value="stop" onclick="clearInterval(timeId);">
function getEvent(event){//事件自动传入

alert("事件类型:"+event.type);

}

document.onmousedown = getEvent;//没有()
<input type="button" value="check" id="check">

<script type="text/javascript" charset="UTF-8">

var obj = document.getElementById("check");

obj.onclick = clickHandler;

function clickHandler(event1){

alert(event1.type);

}

</script>
function focuss(){

var ele = document.getElementById("valueId2");

ele.focus();

}
document.cookie = “”
 

function(message){console.log(message);调试js代码}——但是IE不认识console.log,所以要注释掉

function testConsole(message){

console.log(message);//注释掉,是不会报错的

console.info(message);//注释掉,是不会报错的

console.warn(message);//注释掉,是不会报错的

console.error(message);//注释掉,是不会报错的

}

function test(message){

testConsole(message);

}

test("message");

6,js的内置对象

window(<font onclick="window.location.href='https://www.baidu.com'">百度</font>)  
setInterval()和clearInterval()  
 
窗口对象:window.属性/方法  opener.属性/方法
screen
事件:event(document.onmousedown = getEvenet)
 
 
 
 
 
 
 

7,函数就是对象

8,var add = function(number)   ==>function add(number)

9,没有方法(函数)重载的概念

10,传参个数多少无关,如果打印一个null值:Undefined undefined

11,Function 对象,自定义函数是Function类型(number是传参,后面一个参数是方法体)

12,每个函数都一个隐含的对象:arguments[0](给当前函数传递的第一个实际参数),表示给函数实际传递的参数。和函数的形参无关

arguments.length

13,模拟函数的重载:

001_JavaScript学习的更多相关文章

  1. 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代

    2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...

  2. Angular2学习笔记(1)

    Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...

  3. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  4. 消息队列——RabbitMQ学习笔记

    消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...

  5. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  6. Unity3d学习 制作地形

    这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...

  7. 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...

  8. 菜鸟Python学习笔记第一天:关于一些函数库的使用

    2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...

  9. 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)

    前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...

随机推荐

  1. js实现两种排序算法——冒泡、快速排序

    * 一:冒牌排序1思想:冒泡排序思想:每一次对比相邻两个数据的大小,小的排在前面,如果前面的数据比后面的大就交换这两个数的位置要实现上述规则需要用到两层for循环,外层从第一个数到倒数第二个数,内层从 ...

  2. AES对数据进行加密与解密

    AES对数据进行加密与解密随着对称密码的发展,DES数据加密标准算法由于密钥长度较小(56位),已经不适应当今分布式开放网络对数据加密安全性的要求,因此1997年NIST公开征集新的数据加密标准,即A ...

  3. C# 制作向导

    1.FormBase界面:有“帮助,上一步,下一步,取消”按钮,这些按钮放置在一个Panel上. namespace DataBase {     public partial class FormB ...

  4. 高级UI特效—用SVG码造一个精美的中国地图

    前言 来继续学习SVG,要想深入了解还是要多动手进行实战.关于svg基础可以去看一下我的上一篇文章<SVG前戏—让你的View多姿多彩>,今天就用SVG打造一个精美的UI效果. 正文 先上 ...

  5. 不想用ssh框架

    学过三遍多的样子,没有感悟到特别多的好处. 现在工作都用,想找一个不用这个的工作就不好找.c的话,觉得没有Java面向对象提炼得好. 不是很明白怎么都用,知道自己不想用.里边太多复杂和要背下来的东西, ...

  6. Confluence 6 为登录失败编辑,禁用和配置验证码

    在默认的情况下,验证码将会在失败登录次数达到的时候显示. 如果为登录失败编辑,禁用和配置验证码: 在屏幕的右上角单击 控制台按钮 ,然后选择 General Configuration 链接. 在左侧 ...

  7. Confluence 6 推荐的更新通知设置和禁用

    你可以设置默认的发送选项(发送 / 不发送)和默认的发送时间(每天或每周). 如何配置推荐更新电子邮件通知: 在屏幕的右上角单击 控制台按钮 ,然后选择 General Configuration 链 ...

  8. LeetCode(78):子集

    Medium! 题目描述: 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集). 说明:解集不能包含重复的子集. 示例: 输入: nums = [1,2,3] 输出: [ [3 ...

  9. 20165314 学习基础和C语言基础调查

    技能学习心得 你有什么技能比大多人(超过90%以上)更好?针对这个技能的获取你有什么成功的经验?与老师博客中的学习经验有什么共通之处? 从小我的父母就逼着我学习很多技能,比如钢琴,围棋,书法等,不过很 ...

  10. git使用diff----git-pull之后如何查看拉下来的文件有那些修改

    git pull拉取 git pull对于拉下来的修改文件自动对其进行git add /rm 及git commit 操作.所以拉下来的文件有那些修改,查看的方式可把它们归结于上一次提交的比较. gi ...