04 Javascript的数据类型 数组 函数
javascript:包含ECMAscript DOM BOM
描述了以下内容:
语法 类型 语句 关键字 保留字 运算符 对象
引入方式:
<script>
alert(123)
</script>
//另一文件
<script src="test.js"></script>
基础规范:
每行结束加分号
//单行注释
/*
*/多行注释
变量应遵守以下某条著名规则:
camel标记法:
首字母小写 接下来的字母都是大写 such as
myTestValue
pascal标记法:
首字母大写 接下来的字母都大写开头
MyTestValue
匈牙利类型标记法
在以pascal标记法命名的变量前附加一个小写字母
说明该变量的类型例如 i表示整数 s表示字符串
iMyTestValue
基本数据类型:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--<script src="tsets.js"></script>--> </head>
<body> <script>
// alert(123) /* var x ;
x=12 ;
y=12 ;
x=15 ;
// alert(x)
console.log(x);
console.log(y); var name ="cunzhang", age=28 */ // myFirstName="刘"
// MyFirstName="刘" // function f() {
// console.log(123)
// } //
// if (2>1){
//
// } // console.log(true+1);
// console.log(false+1);
//
// if(1){
// alert(111)
// }else {
// alert(222)
// }
//
//
// var x;
// console.log(x); // function f() {
// document.write("<h1>hello Yuan!</h1>")
// }
// console.log(typeof f()) // Undefined:undefined //null:null 针对对象 // console.log("hello"+2);
// console.log("hello"+true);
// console.log(2+true);
// console.log(parseInt(6.9234454)); //NAN: not a number,属于Number的一种 // console.log(parseInt("hello")); //NAN
// console.log(parseInt("123")); //123
// console.log(parseInt("123abc"));//123
// console.log(parseInt("abc1234"));//NAN //typeof :区分基本数据类型 // console.log(typeof 123);
// console.log(typeof "hello");
// console.log(typeof true);
// console.log(typeof null);
// console.log(typeof undefined);
//
// console.log(typeof [12,3,4]); //两个object
// console.log(typeof {"name":"123"}); //++i --i i++ i--
var i=10;
// i++;
// console.log(i) // console.log(i++)
// console.log(++i) // var n=NaN;
//
// console.log(n>5) ;//
// console.log(n<5) ;//
// console.log(n==5) ;//
// console.log(n==NaN) ;//NAN只要参与比较,布尔值一定是false,除非!=
// console.log(n!=NaN) ; //逻辑运算符
// console.log("hello" && 4)
// if("hello" && 4){
//
// } // console.log(2==2);
// console.log("2"==2);
// console.log(2==="2") // console.log(3>20);
// console.log(3>"20");
// console.log("3">"28")
</script>
</body>
</html>
控制语句与循环:
// if else
// var name = 'alex'
// if(name == 'lijie'){
// alert('俗气')
// }else if(name == 'zhichao'){
// alert('洋气')
// }
// else {
// alert('this is alex')
// } switch: var week = '999'
switch (week) {
case 'Monday':alert('周一');break;
case 'Tuesday':alert('周2');break;
case 3:alert('周3');break;
case 4:alert('周4');break;
case 5:alert('周5');break;
case 6:alert('周6');break;
case 7:alert('周日');break;
default:alert('nothing');break;
} for循环:
for (var i=0; i<; i++){ //初始化条件 结束条件 执行
document.write('welcome'+i+'<br>')
} var attr = [111,222,333] for (var i=0;i<attr.length;i++){
document.write(i);
document.write(attr[i]);
document.write("<br>")
} for (i in attr){
document.write(i);
document.write(attr[i]);
document.write("<br>")
}
遍历标签:
<script>
var eles_P = document.getElementsByTagName('p')
console.log(else_P) for (var i = 0; i<eles_P.length;i++){
console.log(i);
console.log(eles_P[i]);
}
</script>
<p>hello p1</p>
<p>hello p2</p>
<p>hello p3</p>
<p>hello p4</p>
while循环:
var x=0;
var i =1;
while (i<=100){
x+=i;
i++;
}
console.log(x)
异常:
try{
console.log(123);
throw Error(undefined)
}
catch(e){
console.log(e)
}
finally{
console.log('finally')
}
字符串:
//创建字符串对象两种方式
// var str1="hello"; // var str2=new String("hello2");
//
// console.log(typeof str1);
// console.log(typeof str2); //字符串的属性
// console.log(str1.length);
// // 字符串的方法
// //编排方法
// console.log(str1.italics()); // <i>hello</i>
// console.log(str1.bold()); // <i>hello</i>
// console.log(str1.anchor()); // <i>hello</i>
//查询字符串索引
// var str="welcome to the world of JS!";
//
// var str2=str.indexOf("l");
// var str3=str.lastIndexOf("l");
// alert(str2);
// //结果为2
// alert(str3);
// //结果为18 // substr substring
// console.log(str1.substr(1,3));
// console.log(str1.substring(1,3)); // console.log(str1.slice(1,4));
// console.log(str1.slice(-3,-1)) //编排方法
//截取方法
console.log(strl.substr(1,3))
console.log(strl.substring(1,3))
//str.slice()
console.log(strl.slice(1,4)) //相当于切片 主要
str1.replace('aa','o')
//addstr connect~~~
数组:
// //创建方式
// var arr1=[1,"hello",[11,2],{"name":"Yuan"}];
// var arr2=new Array(3);
// var arr3=new Array(1,"world",true,[1,2,3]);
//
// console.log(typeof arr1);
// console.log(typeof arr2);
// console.log(typeof arr3);
//
// // 注意: var arr4=new Array(10) 10是size
// console.log(arr1.length); //Array对象的方法
//join方法
// var arr5=[1,2,3,4,"1234"];
// var ret=arr5.join("**");
// console.log(ret);
// console.log(typeof ret) //toString()
// var ret2=arr1.toString();
// console.log(ret2);
// console.log(typeof ret2); //concat()
// var arr5=[1,2,3];
// var ret3=arr5.concat([5,66]);
//
// console.log(ret3);
// console.log(typeof ret3);
//reverse()
var arr = [23,45,37]
console.log(arr.reverse())
console.log(arr.sort()) //大小排序 比较最高位 function f(a,b){
if (a>b){
return 1; }
else if (a<b){
return -1;
}
else{
return 0;
}
}
// or缩减版
function f2(a,b){
return a-b;
}
console.log(arr.sort(f2)) //若按自然数大小 需自定义函数
//删除子数组
//删除and插入 splice and tostring?? //进出栈
栈操作 先进先出 后进后出~~
//push and pop 栈操作
var arr = [1,2,3];
arr.push([7,8,0]);
console.log(arr);
console.log(arr.length); console.log(arr.pop());
console.log(arr.length); //shift unshift 在前面插入和删除
var arr = [4,5,6];
arr.unshift([11,222]);
console.log(arr)
console.log(arr.length) arr.shift()
console.log(arr)
console.log(arr.length)
函数对象:。。。。。待续
04 Javascript的数据类型 数组 函数的更多相关文章
- javascript之Array()数组函数讲解
Array()是一个用来构建数组的内建构造器函数.数组主要由如下三种创建方式: array = new Array() array = new Array([size]) array = new Ar ...
- javascript中常用数组函数
1.split方法——通过分隔符,将字符串分割,导出字符数组 常用于:分割IP地址,分割文件路径(上传文件时)等等 <!DOCTYPE html PUBLIC "-//W3C//DTD ...
- 探究javascript对象和数组的异同,及函数变量缓存技巧
javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ...
- JavaScript进阶系列02,函数作为参数以及在数组中的应用
有时候,把函数作为参数可以让代码更简洁. var calculator = { calculate: function(x, y, fn) { return fn(x, y); } }; var su ...
- JavaScript变量、数据类型、函数
#转载请留言联系 说在前面: JavaScript 是一种弱类型语言,javascript的变量类型由它的值来决定. JavaScript语句的末尾用 ; 结束.空格没有特殊意义. 1.JavaScr ...
- Javascript作业—封装type函数,返回较详细的数据类型
Javascript作业—封装type函数,返回较详细的数据类型 思路: 1 取typeof的值,如果是数字.函数等非对象类型,直接取类型 2 如果是object类型,则调用Object.protot ...
- javascript函数一共可分为五类: ·常规函数 ·数组函数 ·日期函数 ·数学函数 ·字符串函数
javascript函数一共可分为五类: ·常规函数 ·数组函数 ·日期函数 ·数学函数 ·字符串函数 1.常规函数 javascript常规函数包括以下9个 ...
- [转] 有趣的JavaScript原生数组函数
在JavaScript中,可以通过两种方式创建数组,Array构造函数和 [] 便捷方式, 其中后者为首选方法.数组对象继承自Object.prototype,对数组执行typeof操作符返回‘obj ...
- JavaScript原生数组函数
有趣的JavaScript原生数组函数 在JavaScript中,可以通过两种方式创建数组,构造函数和数组直接量, 其中后者为首选方法.数组对象继承自Object.prototype,对数组执行typ ...
随机推荐
- Mybatis---架构图
- 关于pycharm中导入自己写的模块没有智能提示的解决办法
在pycharm界面中右击py文件所在的文件夹,选择Make Directory as文件,选择其中一个即可
- Java技术之如何保证同一资源被多个线程并发访问时的完整性?
常用的同步方法是采用信号或加锁机制,保证资源在任意时刻至多被一个线程访问.Java语言在多线程编程上实现了完全对象化,提供了对同步机制的良好支持. 在Java中一共有四种方法支持同步,其中前三个是同步 ...
- nvm 知识点
事项 作用 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash 安装nvm comm ...
- OSPF Sham-Link配置示例
在MPLS/VPN环境中,如果PE-CE之间使用OSPF交换路由信息,OSPF route将作为VPNv4 route(携带OSPF domain ID,OSPF Router ID,OSPF Rou ...
- java 生成微信的二维码 工具类
package com.app.wii.util; import java.io.File;import java.io.FileInputStream;import java.io.FileOutp ...
- gcc ld 链接器相关知识,调试指令(程序员的自我修养----链接、装载与库)
最近解决一个动态链接上的问题,因为以前从来没有接触过这方面的知识,所以恶补了一下,首先要了解gcc编译指令(makefile),ld链接器的选项(还有连接脚本section指定内存位置),熟悉查看连接 ...
- XPath定位时,使用文本的方法小技巧。
1)//td[text()= "{0}" ] #这是一种非常常用的定位方法,具体例子使用如下: __keyboard = '//td[text()= "{0}" ...
- VSS2005源代码管理启用http方式
一直在使用vss管理源代码,在服务器上使用文件共享当方式.最近安全形式升级,禁止使用文件共享,因此要升级到http方式. 按照网上的教程,一路前行. 1.登录服务器桌面,打开vss administr ...
- 浏览器渲染页面的时候,不同的script块之间的关系
浏览器渲染页面时,当读到script元素的时候,浏览器中的js引擎会分多个script代码块来读取,不同的script代码出错互不影响,但是由于script中的变量作用域是全局,所以前面代码块声明的变 ...