js随机颜色代码的多种实现方式_javascript技巧
JS随机颜色有很多地方要用到:比如大家看到很多标签连接都是五颜六色。那就需要到这个了。下面开始:
方法思路总共有二。一是准备一组漂亮的候选颜色,二是随机生成颜色。
实现1
var getRandomColor = function(){
return '#' +
(function(color){
return (color += '0123456789abcdef'[Math.floor(Math.random()*16)])
&& (color.length == 6) ? color : arguments.callee(color);
})('');
}
随机生成6个字符然后再串到一起,闭包调用自身与三元运算符让程序变得内敛,初心者应该好好学习这种写法。
实现2
var getRandomColor = function(){
return (function(m,s,c){
return (c ? arguments.callee(m,s,c-1) : '#') +
s[m.floor(m.random() * 16)]
})(Math,'0123456789abcdef',5)
}
把Math对象,用于生成hex颜色值的字符串提取出来,并利用第三个参数来判断是否还继续调用自身。
实现3
以下为引用的内容:
Array.prototype.map = function(fn, thisObj) {
var scope = thisObj || window;
var a = [];
for ( var i=0, j=this.length; i a.push(fn.call(scope, this[i], i, this));
}
return a;
};
var getRandomColor = function(){
return '#'+'0123456789abcdef'.split('').map(function(v,i,a){
return i>5 ? null : a[Math.floor(Math.random()*16)] }).join('');
}
这个要求我们对数组做些扩展,map将返回一个数组,然后我们再用join把它的元素串成字符。
实现4
以下为引用的内容:
var getRandomColor = function(){
return '#'+Math.floor(Math.random()*16777215).toString(16);
}
这个实现非常逆天,虽然有点小bug。我们知道hex颜色值是从#000000到#ffffff,后面那六位数是16进制数,相当于“0x000000”到“0xffffff”。这实现的思路是将hex的最大值ffffff先转换为10进制,进行random后再转换回16进制。我们看一下,如何得到16777215 这个数值的。
以下为引用的内容:
实现5
以下为引用的内容:
var getRandomColor = function(){
return '#'+(Math.random()*0xffffff}
基本实现4的改进,利用左移运算符把0xffffff转化为整型。这样就不用记16777215了。由于左移运算符的优先级比不上乘号,因此随机后再左移,连Math.floor也不用了。
实现6
以下为引用的内容:
var getRandomColor = function(){
return '#'+(function(h){
return new Array(7-h.length).join("0")+h
})((Math.random()*0x1000000}
修正上面版本的bug(无法生成纯白色与hex位数不足问题)。0x1000000相当0xffffff+1,确保会抽选到0xffffff。在闭包里我们处理hex值不足5位的问题,直接在未位补零。
实现7
以下为引用的内容:
var getRandomColor = function(){
return '#'+('00000'+(Math.random()*0x1000000}
这次在前面补零,连递归检测也省了。
实战一下:
以下为引用的内容:
初级23232饼图

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Alat penting untuk analisis saham: Pelajari langkah-langkah untuk melukis carta lilin dalam PHP dan JS, contoh kod khusus diperlukan Dengan perkembangan pesat Internet dan teknologi, perdagangan saham telah menjadi salah satu cara penting bagi banyak pelabur. Analisis saham adalah bahagian penting dalam membuat keputusan pelabur, dan carta lilin digunakan secara meluas dalam analisis teknikal. Mempelajari cara melukis carta lilin menggunakan PHP dan JS akan memberikan pelabur maklumat yang lebih intuitif untuk membantu mereka membuat keputusan yang lebih baik. Carta candlestick ialah carta teknikal yang memaparkan harga saham dalam bentuk candlestick. Ia menunjukkan harga saham

Teknologi pengesanan dan pengecaman muka adalah teknologi yang agak matang dan digunakan secara meluas. Pada masa ini, bahasa aplikasi Internet yang paling banyak digunakan ialah JS Melaksanakan pengesanan muka dan pengecaman pada bahagian hadapan Web mempunyai kelebihan dan kekurangan berbanding dengan pengecaman muka bahagian belakang. Kelebihan termasuk mengurangkan interaksi rangkaian dan pengecaman masa nyata, yang sangat memendekkan masa menunggu pengguna dan meningkatkan pengalaman pengguna termasuk: terhad oleh saiz model, ketepatannya juga terhad. Bagaimana untuk menggunakan js untuk melaksanakan pengesanan muka di web? Untuk melaksanakan pengecaman muka di Web, anda perlu biasa dengan bahasa dan teknologi pengaturcaraan yang berkaitan, seperti JavaScript, HTML, CSS, WebRTC, dll. Pada masa yang sama, anda juga perlu menguasai visi komputer yang berkaitan dan teknologi kecerdasan buatan. Perlu diingat bahawa kerana reka bentuk bahagian Web

Cara menggunakan PHP dan JS untuk mencipta carta lilin saham Carta lilin saham ialah grafik analisis teknikal biasa dalam pasaran saham Ia membantu pelabur memahami saham dengan lebih intuitif dengan melukis data seperti harga pembukaan, harga penutup, harga tertinggi. dan harga terendah turun naik harga saham. Artikel ini akan mengajar anda cara membuat carta lilin saham menggunakan PHP dan JS, dengan contoh kod khusus. 1. Persediaan Sebelum memulakan, kita perlu menyediakan persekitaran berikut: 1. Pelayan yang menjalankan PHP 2. Pelayar yang menyokong HTML5 dan Kanvas 3

Dengan perkembangan pesat kewangan Internet, pelaburan saham telah menjadi pilihan semakin ramai orang. Dalam perdagangan saham, carta lilin adalah kaedah analisis teknikal yang biasa digunakan Ia boleh menunjukkan trend perubahan harga saham dan membantu pelabur membuat keputusan yang lebih tepat. Artikel ini akan memperkenalkan kemahiran pembangunan PHP dan JS, membawa pembaca memahami cara melukis carta lilin saham dan menyediakan contoh kod khusus. 1. Memahami Carta Lilin Saham Sebelum memperkenalkan cara melukis carta lilin saham, kita perlu memahami dahulu apa itu carta lilin. Carta candlestick telah dibangunkan oleh orang Jepun

Ia sangat mudah untuk mengubah suai warna bar tugas dalam Windows 10, tetapi ramai pengguna mendapati bahawa mereka tidak boleh menetapkannya, sebenarnya, ia adalah sangat mudah. perhatikan tetapan terperinci. Cara menukar warna bar tugas win10 Langkah 1: Klik kanan pada desktop - klik Peribadikan Langkah 2: Sesuaikan kawasan warna Langkah 3: Pilih warna kegemaran anda PS: Jika anda tidak boleh menukar warna, anda boleh klik Warna -> Pilih Warna -> Sesuaikan-> Mod tingkap lalai, pilih warna gelap.

Menurut berita pada 6 Mei, vivo secara rasmi mengumumkan hari ini bahawa siri vivoX100 baharu akan dikeluarkan secara rasmi pada jam 19:00 pada 13 Mei. Difahamkan persidangan ini dijangka mengeluarkan tiga model, vivoX100s, vivoX100sPro, dan vivoX100Ultra, serta teknologi pengimejan blueprint blueprint jenama vivo yang dibangunkan sendiri. Blogger digital "Digital Chat Station" turut mengeluarkan rendering rasmi, spesifikasi memori dan padanan warna bagi ketiga-tiga model ini hari ini Antaranya, X100s menggunakan reka bentuk skrin lurus, manakala X100sPro dan X100Ultra mempunyai reka bentuk skrin melengkung. Blogger mendedahkan bahawa vivoX100s datang dalam empat warna: hitam, titanium, cyan, dan spesifikasi memori

Apabila kita melihat warna jadual dalam dokumen WPS orang lain, kesannya berwarna-warni dan cantik tetapi kita hanya mempunyai warna hitam yang membosankan. Jika anda perlu mengisi meja dengan warna, saya percaya ramai pelajar akan melakukannya. Walau bagaimanapun, jika anda ingin menetapkan warna jadual dalam dokumen WPS China, ramai pelajar pasti akan mendapati ia mengelirukan! Hari ini, mari kita pelajari cara menetapkan warna jadual dokumen WPS. Saya telah menyusun dokumen yang saya harap akan membantu semua orang. Langkah-langkahnya adalah seperti berikut: 1. Kita perlu melukis jadual dalam dokumen WPS dan klik kanan pada jadual di mana warna garisan akan diubah suai. 2. Seterusnya, gunakan tetikus untuk mengklik [butang kanan tetikus] pada jadual dalam menu pop timbul, kita dapati [Border and Shading]. 3. Pada masa ini, pilihan [Border and Shading] akan dibuka.

Kami tahu bahawa komputer akan mengalami pelbagai masalah selepas digunakan untuk masa yang lama Yang paling biasa adalah masalah monitor Ramai pengguna mengalami warna monitor yang tidak normal. mari kita lihat penyelesaiannya. Apa yang perlu dilakukan jika monitor Win7 mempunyai warna yang tidak normal: Fenomena kegagalan monitor biasa adalah seperti berikut: 1. Tiada paparan semasa menghidupkan komputer, dan monitor sering tidak dihidupkan. 2. Aksara pada skrin monitor adalah kabur. 3. Monitor mempunyai tompok warna. 4. Jalur berwarna beralun kelihatan pada monitor. 5. Monitor mempunyai bau yang pelik. 6. Terdapat bunyi "pop" berterusan dari monitor. 7. Di bawah aplikasi atau konfigurasi tertentu, skrin mungkin menjadi kabur, gelap (atau malah hitam), hantu, atau beku, dsb. 8. Paparan tidak mempunyai warna, dinyahfokus, skrin terlalu terang, atau
