【综述】JS基本概念

简介: 【综述】JS基本概念

一、什么是JS


1、概念:JavaScript一种直译式脚本语言;


是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言。

 JS最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。


2、表现形式:<script></script>


*弱类型:声明时可以不指出变量的类型,使用时再赋值;比如:var a;


*动态语言:是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化。


*基于原型:目前不是很理解,相关链接:http://www.cnblogs.com/sntetwt/p/3298183.html


二、数据类型

1、类型  


20161009110402657.png


  判断是否为underfine的:typeof(temp)==‘undefined’


  判读是否为null:temp===null


2、类型装换


2.1 转换函数:只有对string类型调用这些方法,这两个函数才能正确运行,


对其他类型返回的都是NaN(Not aNumber)。



parseInt();装换为整型


parseFloat();装换为浮点数


2.2 强制转换:


2.3 使用弱类型


推荐博客: <http://www.cnblogs.com/446557021/archive/2011/10/13/2211043.html>


3、类型判断:


==:判断值是否相等;


===:先判断类型是否相同,再判断值是否相同


4、提示:


typeof:用于输出变量的类型;


eval():将一段字符串转换为Js代码执行;


isNaN():非数字判断



三、函数:

3.1 函数创建:

//C#中,修饰符+返回值类型+方法名(参数列表){方法体}
//在JS中,
//function方法名(参数列表){...}
function add(a,b) {
//alert(a + b);
return a + b;
}
function add2(a,b,c) {
return a + b;
}
//调用方法
var sum = add(1, 2);
alert(sum);


3.2 不支持重载

 在JS中不存在方法重载,后面同名函数会覆盖先声明的函数

在同一个类中方法名相同,参数(个数,类型)不同,称为方法的重载。)


3.3 可变参数:弥补不能重载

//可变参数
function sum(a)
{
var Compute = 0;
for (var i = 0; i <arguments.length; i++) {
Compute += arguments[i];
}
alert(Compute);
}
//调用
sum(1, 1, 1, 1, 1);



  Arguments对象能够模拟重载,Javascrip中每个函数都会有一个Arguments对象实例arguments,它引用着函数的实参,可以用数组下标的方式"[]"引用arguments的元素。arguments.length为函数实参个数,arguments.callee引用函数自身。


  实例:http://www.jb51.net/article/43986.htm




3.4 匿名函数:


最常用方式:


function(参数){…return… }


可以用来将一个方法赋给一个变量,用这个变量来表示这个方法;

<inputtype="button" id="btnShow" value="显示 " />
<script>
//定义一个函数,赋值给f1
//var f1 = function (a, b) {
//     returna + b;
//};
调用方法;
//f1(1,2);
//匿名函数的典型应用:为事件绑定处理函数,传递回调函数
document.getElementById('btnShow').onclick =function () {
alert(13123);
};
</script>


3.5 集合


20161009110715580.png

四、总结

  以上是对JS的总体理解,下一步将会继续深入,期待在JS在实践中的体现。




















相关文章
|
1月前
|
机器学习/深度学习 自然语言处理 JavaScript
信息论、机器学习的核心概念:熵、KL散度、JS散度和Renyi散度的深度解析及应用
在信息论、机器学习和统计学领域中,KL散度(Kullback-Leibler散度)是量化概率分布差异的关键概念。本文深入探讨了KL散度及其相关概念,包括Jensen-Shannon散度和Renyi散度。KL散度用于衡量两个概率分布之间的差异,而Jensen-Shannon散度则提供了一种对称的度量方式。Renyi散度通过可调参数α,提供了更灵活的散度度量。这些概念不仅在理论研究中至关重要,在实际应用中也广泛用于数据压缩、变分自编码器、强化学习等领域。通过分析电子商务中的数据漂移实例,展示了这些散度指标在捕捉数据分布变化方面的独特优势,为企业提供了数据驱动的决策支持。
74 2
信息论、机器学习的核心概念:熵、KL散度、JS散度和Renyi散度的深度解析及应用
|
5月前
|
设计模式 JavaScript 前端开发
在JavaScript中,继承是一个重要的概念,它允许我们基于现有的类(或构造函数)创建新的类
【6月更文挑战第15天】JavaScript继承促进代码复用与扩展,创建类层次结构,但过深的继承链导致复杂性增加,紧密耦合增加维护成本,单继承限制灵活性,方法覆盖可能隐藏父类功能,且可能影响性能。设计时需谨慎权衡并考虑使用组合等替代方案。
47 7
|
1月前
|
设计模式 JavaScript 前端开发
探索JavaScript中的闭包:从基础概念到实际应用
在本文中,我们将深入探讨JavaScript中的一个重要概念——闭包。闭包是一种强大的编程工具,它允许函数记住并访问其所在作用域的变量,即使该函数在其作用域之外被调用。通过详细解析闭包的定义、创建方法以及实际应用场景,本文旨在帮助读者不仅理解闭包的理论概念,还能在实际开发中灵活运用这一技巧。
|
1月前
|
存储 JavaScript 前端开发
JavaScript 对象的概念
JavaScript 对象的概念
38 4
|
1月前
|
缓存 JavaScript 前端开发
深入了解JavaScript的闭包:概念与应用
【10月更文挑战第8天】深入了解JavaScript的闭包:概念与应用
|
1月前
|
前端开发 JavaScript 程序员
【从前端入门到全栈】Node.js 之核心概念
【从前端入门到全栈】Node.js 之核心概念
|
1月前
|
缓存 JavaScript 前端开发
Node.js模块化的基本概念和分类及使用方法
Node.js模块化的基本概念和分类及使用方法
34 0
|
1月前
|
自然语言处理 JavaScript 前端开发
深入理解JavaScript中的闭包:概念与应用
【10月更文挑战第8天】深入理解JavaScript中的闭包:概念与应用
|
2月前
|
自然语言处理 JavaScript 前端开发
探索JavaScript中的闭包:从基础概念到实际应用
本文深入探讨了JavaScript中闭包的概念,从定义、作用域链和实际应用等方面进行了详细阐述。通过生动的比喻和实例代码,帮助读者理解闭包在函数执行上下文中的重要性,以及如何在实际开发中有效利用闭包解决复杂问题。同时,文章也指出了过度使用闭包可能导致的潜在问题,并给出了相应的优化建议。
|
3月前
|
JavaScript 前端开发
js bom的概念
js bom的概念
35 1
下一篇
无影云桌面