Javascript 说明:

JavaScript 和 Java 之间几乎没有任何关系。

JavaScript原名为LiveScript,他的作用只是为了处理一些复杂的动态网页。

目前,JS是遵循ECMAScript(ES6)规定的。


JavaScript 在HTML5中导入方式:

1. 元素导入:

<body>
<button onclick="alert('hello')"> 点我</button>
</body>

2. 内部文档导入:

<head>
<script>
alert('hello');
</script>
</head>

3. 外部文档导入:

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

JavaScript 在HTML5中3种提示框(输出方式)

1. alert()

<script>
alert('hello');
</script>

2. comfirm()

<script>
confirm('hello');
</script>

3. prompt()

<script>
prompt('hello');
</script>

浏览器控制台输出

1. console方式:

  1. console.log()
//控制台上输出
var obj=[{name:1,age:22},{name:1,age:22}];
console.log(obj);
  1. console.dir()
//控制台上输出,比log更详细
var obj=[{name:1,age:22},{name:1,age:22}];
console.dir(obj);
  1. console.table()
//控制台上输出,以表的形式展现
var obj=[{name:1,age:22},{name:1,age:22}];
console.table(obj);

** 结果:**

name age
1 22
2 23

2. document方式:

<script>
// 向网页上面直接写
document.write('hello');
</script>

JavaScript 类型检查

  • typeof: 检测数据类型的运算符

 typeof 1 => "number";
  • instanceof: 检测某个实例是否属于这个类

  • constructor: 获取当前实例的构造器

JavaScript 中function:

1. 自动执行函数
1. ~function(){}()
2. !function(){}()
3. +function(){}()
4. -function(){}()

这四种function()就是一种对函数 -->;(function(n){})(10) ===>自动执行(该function是集定义与执行传参为一体的函数),注意function名字前面有个分号;该作用就是区分函数块的,否则在执行函数时,会有函数嵌套。

上面这四种符号都是为了简化.

2. 普通函数

function A()
{
alert('test');
}

如果在调用的时候A 这样就只是会返回函数的地址,而A() 则会执行A函数

3. this

1:
function fun(){
console.log(this) // this--> window
} 2:
var obj = {fn:fn}; first fn is attr,and second is function fn();
fn(); // this --> window
obj.fn(); // this --> obj 3:
function sum(){
fn(); // this --> window
}

注:

  1. this 指向的object 要看function 执行前面是否有.
  • 如果前面没有.

    • this 永远指向 window/根对象
  • 如果有.
    • this 指向. 之前的对象
  1. 自动执行函数中的this 永远指向window

    this --> window

4.工厂模式

  • 工厂模式:
	function createPerson(name,age){
var obj = new Object() // 或者 var obj = {};
obj.name = name;
obj.age = age;
obj.print = function(){
document.write('name:' + obj.name + 'age:' + obj.age);
}
return obj;
} var person = createPerson(name,age);
  • 普通构造函数模式:
	function Person(namme,age){
//默认创建实例返回
this.name = name;
this.age = age;
this.print = function(){
document.write('name:' + this.name + 'age:' + this.age);
}
}

注:

  • 工厂模式,最重要的是在函数执行里 ,new了 一个对象,最后返回这个对象。
  • 普通模式,不会返回任何东西
  • JS 不存在重载,后者会覆盖前者

最后说下:

function test(){
.name = function(){ // 这里"." 作用是啥?
}
}

上面函数中 . 点号的作用是啥?

最新文章

  1. Mongodb 的基本使用
  2. HDU 1002 A + B Problem II(AC代码)
  3. 3905 - Meteor
  4. 多个tab切换传参
  5. Access to the temp directory is denied. Identity &#39;NT AUTHORITY\NETWORK SERVICE&#39; under which XmlSerializer is running does not have sufficient permiss
  6. js入门实例
  7. ThinkPHP--IS_AJAX
  8. Java Collections 源码分析
  9. HBase写被block的分析
  10. C编程中printf不加&#39;\n&#39;不输出
  11. K3CLOUD常用数据表
  12. loj 6436 PKUSC2018 神仙的游戏
  13. Qt5.10.1 在windows下vs2017静态编译
  14. Confluence 6 MySQL 创建数据库和数据库用户
  15. string标准C++中的的用法总结(转)
  16. 使用git克隆项目、从dev分支上更新代码以及将代码提交到Coding(或GitHub)上面
  17. .NET 同步与异步之锁(ReaderWriterLockSlim)(八)
  18. python列表(list)遍历
  19. 代码问题: 【ADNet】
  20. HDU 5957 Query on a graph (拓扑 + bfs序 + 树剖 + 线段树)

热门文章

  1. luogu1966 火柴排队
  2. go11---方法method
  3. [翻译]NUnit--Getting Started(二)
  4. 10.07 WZZX Day2总结
  5. 4.8 Using Ambiguous Grammars
  6. oracle 统计/分析函数
  7. 杂项:game_navigation
  8. UEditor动态添加图片访问路径前缀
  9. GitHub上README.md教程(copy)
  10. NTFS中的ADS的一些问题