前言: J s Js Js太基础了,有 C C C语言的基础就行了,基本快的话能一天学完,由于我时间不够,只能慢慢学,这篇文章记录了我学习 J S JS JS的过程,希望能给看到这篇文章的人一点帮助。
与 J a v a Java Java的 O b j e c t [ ] Object[] Object[]类似,可以储存多种类型,可以动态增加元素。
其他操作如访问与 C C C语言一样,另外访问数组的长度 a . l e n g t h a.length a.length,该函数也是动态返回长度的。
var a = [1, 2, 3]; var b = [1, 'harris', 'loverrrrrrrrr']; console.log(a); console.log(b); for (var i = 0; i < 3; i++) { alert(b[i]); } var ave = 0; for (var i = 0; i < 3; i++) { ave += a[i]; } console.log(ave / a.length, b[0]); var c = []; for (var i = 0; i < 10; i++) c[i] = i; var str = ''; for (var i = 0; i < 10; i++) str += c[i] + ''; console.log(str);往数组里添加元素还可以这样写。
var b = []; for (var i = 0; i < 5; i++) { b[b.length] = i; } var str = ''; for (var i = 0; i < b.length; i++) str += b[i]; alert(str);冒泡排序:
var b = [5, 3, 1, 6, 4, 2]; for (var i = 0; i < b.length - 1; i++) for (var j = 0; j < b.length - i - 1; j++) { if (b[j] > b[j + 1]) { var tmp = b[j]; b[j] = b[j + 1]; b[j + 1] = tmp; } } var ans = ''; for (var i = 0; i < b.length; i++) ans += b[i]; alert(ans);注意到一个点: 两个整数在进行除法运算 时,如果不能整除 会自动转化为浮点数.
function fun1(str) { return str + 'harris'; //有返回值的函数 } alert(fun1('my name ')); function fun2(a, b) { return [a + b, a - b, a * b, a / b]; } function fun3() { return 1, 2, 3; //只会返回最后一个值 } alert(fun2(4, 2)); alert(fun3());如果函数没有返回值,则会返回 u n d e f i n e d undefined undefined.
函数中的 a r u g m e n t s arugments arugments对象,该对象会储存所有传递过来的参数.
function fun1() { var str = ''; for (var i = 0; i < arguments.length; i++) { str += arguments[i]; } alert(str); } fun1(0, 7, 1, 8, 1, 2); //arguments 是函数内置的对象,是一个伪数组。函数之间可以互相调用.
函数的两种声明方式 :
//函数声明的两种方式 function f1() { //函数关键字声明 alert(123); } var f2 = function () { //函数表达式(匿名函数) 类似变量名 但是函数表达式存的函数 alert(456); } f1(); f2();只需要注意一个特殊的,其他与 C C C类似.
function f1() { alert(123); num = 30; } var f2 = function () { alert(456); } f1(); alert(num); //在函数内部不用var 声明的变量也是全局变量,但是不推荐使用另外: J s Js Js里现在没有块级作用域.
if (3 < 5) { var num = 3; } alert(num);即上面这个 n u m num num是可以打出来的.