08/07/19 06:45:24
ちなみに、
javascript:s="abcdefghij",o={}; for(i=0;i<10;i++){for(j=0;j<10;j++){for(k=0;k<10;k++){ o[ s[i]+s[j]+s[k] ] = 100*i+10*j+k }}} txt=''; count=150; for(p in o){txt+=o[p]+' '} document.body.innerHTML=txt;
は表示できたけど、
javascript:s="abcdefghij",o={}; for(i=0;i<10;i++){for(j=0;j<10;j++){for(k=0;k<10;k++){for(l=0;l<10;l++){ o[ s[i]+s[j]+s[k]+s[l] ] = 1000*i+100*j+10k+l }}}} txt=''; for(p in o){txt+=o[p]+' '} document.body.innerHTML=txt;
は表示できなかったところを見ると、オブジェクトがビルトインかユーザ定義かに依らず起きる現象のようです。
(上例では1000個および10000個からなるオブジェクトを作り、その値を表示しようとしている)
また、
javascript:s="abcdefghij",o={}; for(i=0;i<10;i++){for(j=0;j<10;j++){for(k=0;k<10;k++){for(l=0;l<10;l++){ o[ s[i]+s[j]+s[k]+s[l] ] = 1000*i+100*j+10k+l }}}} txt=''; for(p in o){txt+=o[p]+' '} alert(3)
もアラートが出ないところを見るとinnerHTMLの動作に関する問題でもなさそうです。
bookmarkletは2000文字近くまで使えるそうなので、bookmarkletの文字数制限の問題でもなさそうです。
いったい何が原因なのか全く分かりません。