1、等腰三角形
/*
整体思路为:
因为最多的一行有10个*,10个&ensp,总计占位20位。
所以让第一行只出现一个*,且让他前面出现9个空格,而后面就相当于最后一行空出10个位置,差不多处在居中位。第二行到第十行同理。
*/
var str="";
var i=1,n=1,m=10; /* i控制行,n控制该行应该出现几个*号,m控制该行应该出现几个空格 */
while(i<=10){
m=10;
while(m>i){ /* 当m递减至不再大于i时,不再输入空格 */
str+=" ";
m--;
}
n=1;
while(n<=i){ /* n初始为1,让第n行只能出现n个*号 */
str+="* ";
n++;
}
i++;
str+="</br>";
}
document.write(str);
2、99乘法表
var row=9,col=9,i=0,j;
document.write("<table>");
while(i++<row){
document.write("<tr>");
j=0;
while(j++<col){
if(i<j) break;
document.write("<td>"+i+"*"+j+"="+i*j+"</td>");
}
document.write("</tr>");
}
document.write("</table>");
3、菱形
var str = "";
var i = 1,
n = 1,
m = 10; /* i控制行,n控制该行应该出现几个*号,m控制该行应该出现几个空格 */
while (i <= 20) {
/* 1-10行 */
if (i > 0 && i <= 10) {
m = 10;
while (m > i) {
str += " ";
m--;
}
n = 1;
while (n <= i) {
str += "* ";
n++;
}
}
/* 10-20行 */
if (i > 10) {
n = 11;
while (n <= i ) {
str += " ";
n++;
}
m = 20;
while (m > i ) {
str += "* ";
m--;
}
}
// console.log(i,n,m)
i++;
str += "</br>";
}
document.write(str);
4、3-100的质数
var i = 2,
a = 3;
while (a <= 100) {
i = 2;
var bool = true;
while (i < a) {
if (a % i === 0) {
bool = false;
break;
}
i++;
}
if (bool) console.log(a);
a++;
}
5、水仙花数(break)
一:
var i=1,j=0,k=0;
while(i<10){
j=0;
while(j<10){
k=0;
while(k<10){
if(i*100+j*10+k*1 === i*i*i+j*j*j+k*k*k){
console.log(i*100+j*10+k*1);
}
k++;
}
j++;
}
i++;
}
二:
var i = 1,
j = 0,
n = 0;
abc: while (j < 10) {
n = 0;
while (n < 10) {
if (i * i * i + j * j * j + n * n * n === i * 100 + j * 10 + n)
break abc;
n++;
}
j++;
}
console.log(i * 100 + j * 10 + n);
6、将0-9 A-Z a-z作为字符串连接在一起(continue)
"azAZ09".charCodeAt(5); 显示字符串中第5位9的码值
String.fromCharCode(97);将97位转换为字符串
a = 97, z = 122, A = 65, Z = 90, 0 = 48, 9 = 57.
var i=47;
var str="";
while(i++<122){
if(i>57 && i<65) continue;
if(i>90 && i<97) continue;
str+=String.fromCharCode(i);
}
console.log(str);